Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
JPHYSICS::JAbsorptionLengthOfPureWater Class Referenceabstract

Absorption length of pure water. More...

#include <JPDFToolkit.hh>

Inheritance diagram for JPHYSICS::JAbsorptionLengthOfPureWater:
JTOOLS::JGridSplineFunction1D_t JTOOLS::JSplineFunction1D< JSplineElement2D< double, double >, JGridCollection, double > JTOOLS::JSplineFunction< JSplineElement2D< double, double >, JGridCollection, double, JDistance< typename JSplineElement2D< double, double >::abscissa_type > > JTOOLS::JFunction1D< JSplineElement2D< double, double >::abscissa_type, double > JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type, double >

Public Types

typedef JSplineCollection
< JSplineElement2D< double,
double >, JGridCollection,
JDistance< typename
JSplineElement2D< double,
double >::abscissa_type > > 
collection_type
 
typedef
collection_type::abscissa_type 
abscissa_type
 
typedef
collection_type::ordinate_type 
ordinate_type
 
typedef collection_type::value_type value_type
 
typedef
collection_type::distance_type 
distance_type
 
typedef
collection_type::const_iterator 
const_iterator
 
typedef
collection_type::const_reverse_iterator 
const_reverse_iterator
 
typedef collection_type::iterator iterator
 
typedef
collection_type::reverse_iterator 
reverse_iterator
 
typedef JFunction1D
< abscissa_type, double > 
function_type
 
typedef
function_type::argument_type 
argument_type
 
typedef function_type::result_type result_type
 
typedef
function_type::JExceptionHandler 
exceptionhandler_type
 
enum  
 
typedef JFunctional
< JSplineElement2D< double,
double >::abscissa_type,
double > 
functional_type
 
typedef JSupervisor supervisor_type
 

Public Member Functions

 JAbsorptionLengthOfPureWater ()
 
double operator() (const double lambda) const
 Absorption length of pure water. More...
 
result_type operator() (const argument_type x) const
 Function value evaluation. More...
 
virtual result_type evaluate (const argument_type *pX) const =0
 Recursive function value evaluation. More...
 
JSupervisor getSupervisor () const
 Get supervisor. More...
 
const JExceptionHandler & getExceptionHandler () const
 Get exception handler. More...
 
void setExceptionHandler (const JSupervisor &supervisor)
 Set the supervisor for handling of exceptions. More...
 

Static Public Member Functions

static result_type getValue (const JFunctional &function, const argument_type *pX)
 Recursive function value evaluation. More...
 
static result_type getValue (typename JClass< result_type >::argument_type y, const argument_type *pX)
 Termination of recursive function value evaluation. More...
 

Protected Attributes

JSupervisor supervisor
 

Detailed Description

Absorption length of pure water.

CITATION: Jonasz M. 2007. Absorption coefficient of water: Data sources (www.tpdsci.com/Tpc/AbsCfOfWaterDat.php). In: Top. Part. Disp. Sci. (www.tpdsci.com).

DATA FROM: Wozniak B., Wozniak S. B., Tyszka K., Ostrowska M., Majchrowski R., Ficek D., Dera J. 2005. Modelling the light absorption properties of particulate matter forming organic particles suspended in seawater. Part 2. Modelling results. Oceanologia 47, 621-662. see also Wozniak B., Dera J. 2007. Light absorption in sea water. Springer, Berlin, 456 pp. (see p. 62)

NOTES: As stated by the data authors, the data are based on measurement results obtained by various authors (interpolated by a linear approximation where applicable): Wavelength Reference

Definition at line 196 of file JPDFToolkit.hh.

Member Typedef Documentation

typedef JSplineCollection<JSplineElement2D< double, double > , JGridCollection , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> > JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::collection_type
inherited

Definition at line 663 of file JSpline.hh.

typedef collection_type::abscissa_type JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::abscissa_type
inherited

Definition at line 665 of file JSpline.hh.

typedef collection_type::ordinate_type JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::ordinate_type
inherited

Definition at line 666 of file JSpline.hh.

typedef collection_type::value_type JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::value_type
inherited

Definition at line 667 of file JSpline.hh.

typedef collection_type::distance_type JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::distance_type
inherited

Definition at line 668 of file JSpline.hh.

Definition at line 670 of file JSpline.hh.

Definition at line 671 of file JSpline.hh.

typedef collection_type::iterator JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::iterator
inherited

Definition at line 672 of file JSpline.hh.

Definition at line 673 of file JSpline.hh.

typedef JFunction1D<abscissa_type, double > JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::function_type
inherited

Definition at line 675 of file JSpline.hh.

typedef function_type::argument_type JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::argument_type
inherited

Definition at line 677 of file JSpline.hh.

typedef function_type::result_type JTOOLS::JSplineFunction1D< JSplineElement2D< double, double > , JGridCollection , double , JDistance<typename JSplineElement2D< double, double > ::abscissa_type> >::result_type
inherited

Definition at line 678 of file JSpline.hh.

Definition at line 679 of file JSpline.hh.

typedef JFunctional<JSplineElement2D< double, double >::abscissa_type , double > JTOOLS::JFunction1D< JSplineElement2D< double, double >::abscissa_type , double >::functional_type
inherited

Definition at line 322 of file JFunctional.hh.

typedef JSupervisor JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::supervisor_type
inherited

Definition at line 88 of file JFunctional.hh.

Member Enumeration Documentation

anonymous enum
inherited

Constructor & Destructor Documentation

JPHYSICS::JAbsorptionLengthOfPureWater::JAbsorptionLengthOfPureWater ( )
inline

Definition at line 200 of file JPDFToolkit.hh.

201  {
202  // wave- absorption
203  // length coefficient
204  // [um] [1/m]
205  (*this)[0.200e3] = 3.07;
206  (*this)[0.205e3] = 2.53;
207  (*this)[0.210e3] = 1.99;
208  (*this)[0.215e3] = 1.65;
209  (*this)[0.220e3] = 1.31;
210  (*this)[0.225e3] = 1.1185;
211  (*this)[0.230e3] = 0.927;
212  (*this)[0.235e3] = 0.8235;
213  (*this)[0.240e3] = 0.72;
214  (*this)[0.245e3] = 0.6395;
215  (*this)[0.250e3] = 0.559;
216  (*this)[0.255e3] = 0.508;
217  (*this)[0.260e3] = 0.457;
218  (*this)[0.265e3] = 0.415;
219  (*this)[0.270e3] = 0.373;
220  (*this)[0.275e3] = 0.3305;
221  (*this)[0.280e3] = 0.288;
222  (*this)[0.285e3] = 0.2515;
223  (*this)[0.290e3] = 0.215;
224  (*this)[0.295e3] = 0.178;
225  (*this)[0.300e3] = 0.141;
226  (*this)[0.305e3] = 0.123;
227  (*this)[0.310e3] = 0.105;
228  (*this)[0.315e3] = 0.0947;
229  (*this)[0.320e3] = 0.0844;
230  (*this)[0.325e3] = 0.0761;
231  (*this)[0.330e3] = 0.0678;
232  (*this)[0.335e3] = 0.06195;
233  (*this)[0.340e3] = 0.0325;
234  (*this)[0.345e3] = 0.02645;
235  (*this)[0.350e3] = 0.0204;
236  (*this)[0.355e3] = 0.018;
237  (*this)[0.360e3] = 0.0156;
238  (*this)[0.365e3] = 0.0135;
239  (*this)[0.370e3] = 0.0114;
240  (*this)[0.375e3] = 0.011385;
241  (*this)[0.380e3] = 0.01137;
242  (*this)[0.385e3] = 0.00941;
243  (*this)[0.390e3] = 0.00851;
244  (*this)[0.395e3] = 0.00813;
245  (*this)[0.400e3] = 0.00663;
246  (*this)[0.405e3] = 0.0053;
247  (*this)[0.410e3] = 0.00473;
248  (*this)[0.415e3] = 0.00444;
249  (*this)[0.420e3] = 0.00454;
250  (*this)[0.425e3] = 0.00478;
251  (*this)[0.430e3] = 0.00495;
252  (*this)[0.435e3] = 0.0053;
253  (*this)[0.440e3] = 0.00635;
254  (*this)[0.445e3] = 0.00751;
255  (*this)[0.450e3] = 0.00922;
256  (*this)[0.455e3] = 0.00962;
257  (*this)[0.460e3] = 0.00979;
258  (*this)[0.465e3] = 0.01011;
259  (*this)[0.470e3] = 0.0106;
260  (*this)[0.475e3] = 0.0114;
261  (*this)[0.480e3] = 0.0127;
262  (*this)[0.485e3] = 0.0136;
263  (*this)[0.490e3] = 0.015;
264  (*this)[0.495e3] = 0.0173;
265  (*this)[0.500e3] = 0.0204;
266  (*this)[0.505e3] = 0.0256;
267  (*this)[0.510e3] = 0.0325;
268  (*this)[0.515e3] = 0.0396;
269  (*this)[0.520e3] = 0.0409;
270  (*this)[0.525e3] = 0.0417;
271  (*this)[0.530e3] = 0.0434;
272  (*this)[0.535e3] = 0.0452;
273  (*this)[0.540e3] = 0.0474;
274  (*this)[0.545e3] = 0.0511;
275  (*this)[0.550e3] = 0.0565;
276  (*this)[0.555e3] = 0.0596;
277  (*this)[0.560e3] = 0.0619;
278  (*this)[0.565e3] = 0.0642;
279  (*this)[0.570e3] = 0.0695;
280  (*this)[0.575e3] = 0.0772;
281  (*this)[0.580e3] = 0.0896;
282  (*this)[0.585e3] = 0.11;
283  (*this)[0.590e3] = 0.1351;
284  (*this)[0.595e3] = 0.1672;
285  (*this)[0.600e3] = 0.2224;
286  (*this)[0.605e3] = 0.2577;
287  (*this)[0.610e3] = 0.2644;
288  (*this)[0.615e3] = 0.2678;
289  (*this)[0.620e3] = 0.2755;
290  (*this)[0.625e3] = 0.2834;
291  (*this)[0.630e3] = 0.2916;
292  (*this)[0.635e3] = 0.3012;
293  (*this)[0.640e3] = 0.3108;
294  (*this)[0.645e3] = 0.325;
295  (*this)[0.650e3] = 0.34;
296  (*this)[0.655e3] = 0.371;
297  (*this)[0.660e3] = 0.41;
298  (*this)[0.665e3] = 0.429;
299  (*this)[0.670e3] = 0.439;
300  (*this)[0.675e3] = 0.448;
301  (*this)[0.680e3] = 0.465;
302  (*this)[0.685e3] = 0.486;
303  (*this)[0.690e3] = 0.516;
304  (*this)[0.695e3] = 0.559;
305  (*this)[0.700e3] = 0.624;
306 
307  compile();
308  }

Member Function Documentation

double JPHYSICS::JAbsorptionLengthOfPureWater::operator() ( const double  lambda) const
inline

Absorption length of pure water.

Parameters
lambdawavelength of light [nm]
Returns
absorption length [m]

Definition at line 317 of file JPDFToolkit.hh.

318  {
319  const double y = JGridSplineFunction1D_t::operator()(lambda);
320 
321  return 1.0 / y;
322  }
result_type operator()(const argument_type x) const
Function value evaluation.
Definition: JFunctional.hh:333
result_type JTOOLS::JFunction1D< JSplineElement2D< double, double >::abscissa_type , double >::operator() ( const argument_type  x) const
inlineinherited

Function value evaluation.

Parameters
xargument value
Returns
function value

Definition at line 333 of file JFunctional.hh.

334  {
335  return this->evaluate(&x);
336  }
virtual result_type evaluate(const argument_type *pX) const =0
Recursive function value evaluation.
virtual result_type JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::evaluate ( const argument_type pX) const
pure virtualinherited

Recursive function value evaluation.

Parameters
pXpointer to abscissa values
Returns
function value
static result_type JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::getValue ( const JFunctional< JSplineElement2D< double, double >::abscissa_type, double > &  function,
const argument_type pX 
)
inlinestaticinherited

Recursive function value evaluation.

Parameters
functionfunction
pXpointer to abscissa values

Definition at line 106 of file JFunctional.hh.

108  {
109  return function.evaluate(pX);
110  }
static result_type JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::getValue ( typename JClass< result_type >::argument_type  y,
const argument_type pX 
)
inlinestaticinherited

Termination of recursive function value evaluation.

Parameters
yresult
pXpointer to abscissa values

Definition at line 119 of file JFunctional.hh.

121  {
122  return y;
123  }
JSupervisor JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::getSupervisor ( ) const
inlineinherited

Get supervisor.

Returns
supervisor

Definition at line 264 of file JFunctional.hh.

const JExceptionHandler& JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::getExceptionHandler ( ) const
inlineinherited

Get exception handler.

Returns
exception handler

Definition at line 275 of file JFunctional.hh.

void JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::setExceptionHandler ( const JSupervisor &  supervisor)
inlineinherited

Set the supervisor for handling of exceptions.

Parameters
supervisorsupervisor

Definition at line 286 of file JFunctional.hh.

Member Data Documentation

JSupervisor JTOOLS::JFunctional< JSplineElement2D< double, double >::abscissa_type , double >::supervisor
protectedinherited

Definition at line 293 of file JFunctional.hh.


The documentation for this class was generated from the following file: