J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

K. F. Riley, M. P. Hobson, and S. J. Bence, Mathematical Methods for Physics and Engineering (Cambridge University, 2006).

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

J. R. Fienup, “Phase retrieval for undersampled broadband images,” J. Opt. Soc. Am. A 16, 1831–1837 (1999).

[CrossRef]

J. R. Fienup, “Phase-retrieval algorithms for a complicated optical system,” Appl. Opt. 32, 1737–1746 (1993).

[CrossRef]

R. G. Paxman, T. J. Schulz, and J. R. Fienup, “Joint estimation of object and aberrations by using phase diversity,” J. Opt. Soc. Am. A 9, 1072–1085 (1992).

[CrossRef]

J. R. Fienup, “Phase retrieval algorithms: a comparison,” Appl. Opt. 21, 2758–2769 (1982).

[CrossRef]

A. Griewank, D. Juedes, and J. Utke, “Algorithm 755: ADOL-C: a package for the automatic differentiation of algorithms written in C/C++,” ACM Trans. Math. Softw. 22, 131–167 (1996).

[CrossRef]

A. Griewank and A. Walther, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation, 2nd ed. (SIAM, 2008).

L. Hascoet and V. Pascual, “The tapenade automatic differentiation tool: principles, model, and specification,” ACM Trans. Math. Softw. 39, 1–43 (2013).

[CrossRef]

K. F. Riley, M. P. Hobson, and S. J. Bence, Mathematical Methods for Physics and Engineering (Cambridge University, 2006).

A. Griewank, D. Juedes, and J. Utke, “Algorithm 755: ADOL-C: a package for the automatic differentiation of algorithms written in C/C++,” ACM Trans. Math. Softw. 22, 131–167 (1996).

[CrossRef]

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

S. F. Walter and L. Lehmann, “Algorithmic differentiation in Python with AlgoPy,” J. Comput. Sci. 4, 334–344 (2013).

S. J. Wright and J. Nocedal, “Quasi-Newton methods,” in Numerical Optimization (Springer, 1999), Sect. 8.1.

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

L. Hascoet and V. Pascual, “The tapenade automatic differentiation tool: principles, model, and specification,” ACM Trans. Math. Softw. 39, 1–43 (2013).

[CrossRef]

K. F. Riley, M. P. Hobson, and S. J. Bence, Mathematical Methods for Physics and Engineering (Cambridge University, 2006).

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

A. Griewank, D. Juedes, and J. Utke, “Algorithm 755: ADOL-C: a package for the automatic differentiation of algorithms written in C/C++,” ACM Trans. Math. Softw. 22, 131–167 (1996).

[CrossRef]

S. F. Walter and L. Lehmann, “Algorithmic differentiation in Python with AlgoPy,” J. Comput. Sci. 4, 334–344 (2013).

A. Griewank and A. Walther, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation, 2nd ed. (SIAM, 2008).

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).

S. J. Wright and J. Nocedal, “Quasi-Newton methods,” in Numerical Optimization (Springer, 1999), Sect. 8.1.

L. Hascoet and V. Pascual, “The tapenade automatic differentiation tool: principles, model, and specification,” ACM Trans. Math. Softw. 39, 1–43 (2013).

[CrossRef]

A. Griewank, D. Juedes, and J. Utke, “Algorithm 755: ADOL-C: a package for the automatic differentiation of algorithms written in C/C++,” ACM Trans. Math. Softw. 22, 131–167 (1996).

[CrossRef]

S. F. Walter and L. Lehmann, “Algorithmic differentiation in Python with AlgoPy,” J. Comput. Sci. 4, 334–344 (2013).

K. F. Riley, M. P. Hobson, and S. J. Bence, Mathematical Methods for Physics and Engineering (Cambridge University, 2006).

SymPy Development Team, “SymPy: Python library for symbolic mathematics” (2014), http://www.sympy.org .

S. J. Wright and J. Nocedal, “Quasi-Newton methods,” in Numerical Optimization (Springer, 1999), Sect. 8.1.

A. Griewank and A. Walther, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation, 2nd ed. (SIAM, 2008).

B. Bell, “CppAD: a package for C++ algorithmic differentiation,” in Computational Infrastructure for Operations Research (2012), http://www.coin-or.org/CppAD/ .

“Selected AD tools,” http://www.autodiff.org .

A. Lee, “ad 1.2.2,” https://pypi.python.org/pypi/ad .

N. C. Domingo, “adol-Py,” https://pypi.python.org/pypi/adol-Py/0.1 .

B. M. Bell, “pycppad,” http://www.seanet.com/~bradbell/pycppad/index.xml .

J. Bergstra, O. Breuleux, F. Bastien, P. Lamblin, R. Pascanu, G. Desjardins, J. Turian, D. Warde-Farley, and Y. Bengio, “Theano: a CPU and GPU math expression compiler,” in Proceedings of the Python for Scientific Computing Conference (SciPy) (2010).