ReFRACtor
jennrich_sampson_nlls_problem.cc
Go to the documentation of this file.
2 
3 
4 using namespace FullPhysics;
5 using namespace blitz;
6 
7 // See base class for description.
9 {
10  if(R.size() <= 0) {
11  assert_parameter_set_correctly();
12  increment_num_cost_evaluations();
13  R.resize(residual_size());
14 
15  for(int i=1; i<=residual_size(); i++)
16  R(i-1) = 2.0 + 2.0*i - (exp(i*X(0)) + exp(i*X(1)));
17  }
18  return R.copy();
19 }
20 
21 // See base class for description.
23 {
24  if(J.size() <= 0) {
25  assert_parameter_set_correctly();
26  increment_num_der1_evaluations();
27  J.resize(residual_size(), parameter_size());
28 
29  for(int i=1; i<=residual_size(); i++) {
30  J(i-1,0) = -i*exp(i*X(0)); J(i-1,1) = -i*exp(i*X(1));
31  }
32  }
33  return J.copy();
34 }
virtual blitz::Array< double, 2 > jacobian()
The Jacobian matrix function.
const Unit J("J", N *m)
Apply value function to a blitz array.
virtual blitz::Array< double, 1 > residual()
The residual vector function.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1

Copyright © 2017, California Institute of Technology.
ALL RIGHTS RESERVED.
U.S. Government Sponsorship acknowledged.
Generated Fri Aug 24 2018 15:44:08