Provides the headers for the general c2_function algebra which fast, flexible operations on piecewise-twice-differentiable functions. 더 자세히 ...
#include <cmath>
#include <vector>
#include <utility>
#include <string>
#include <stdexcept>
#include <typeinfo>
#include <sstream>
#include <limits>
#include "c2_function.icc"
클래스 | |
class | c2_exception |
the exception class for c2_function operations. 더 자세히 ... | |
class | c2_composed_function_p< float_type > |
class | c2_sum_p< float_type > |
class | c2_diff_p< float_type > |
class | c2_product_p< float_type > |
create a c2_function which is the product of two other c2_functions.This should always be constructed using c2_function::operator*() 더 자세히 ... | |
class | c2_ratio_p< float_type > |
create a c2_function which is the ratio of two other c2_functions.This should always be constructed using c2_function::operator/() 더 자세히 ... | |
class | c2_piecewise_function_p< float_type > |
create a c2_function which is a piecewise assembly of other c2_functions.The functions must have increasing, non-overlapping domains. Any empty space between functions will be filled with a linear interpolation. 더 자세히 ... | |
class | c2_quadratic_p< float_type > |
create a quadratic mapping of another functionfor example, given a c2_function f 더 자세히 ... | |
class | c2_ptr< float_type > |
class | c2_fblock< float_type > |
structure used to hold evaluated function data at a point. 더 자세히 ... | |
class | c2_function< float_type > |
the parent class for all c2_functions.c2_functions know their value, first, and second derivative at almost every point. They can be efficiently combined with binary operators, via c2_binary_function, composed via c2_composed_function_, have their roots found via find_root(), and be adaptively integrated via partial_integrals() or integral(). They also can carry information with them about how to find 'interesting' points on the function. This information is set with set_sampling_grid() and extracted with get_sampling_grid(). 더 자세히 ... | |
struct | c2_function< float_type >::recur_item |
the data element for the internal recursion stack for the sampler and integrator 더 자세히 ... | |
struct | c2_function< float_type >::c2_integrate_recur |
structure used to pass information recursively in integrator. 더 자세히 ... | |
struct | c2_function< float_type >::c2_sample_recur |
structure used to pass information recursively in sampler. 더 자세히 ... | |
struct | c2_function< float_type >::c2_root_info |
structure used to hold root bracketing information 더 자세히 ... | |
class | c2_classic_function_p< float_type > |
a container into which any conventional c-style function can be dropped, to create a degenerate c2_function without derivatives. Mostly useful for sampling into interpolating functions. construct a reference to this with c2_classic_function() 더 자세히 ... | |
class | c2_const_ptr< float_type > |
create a container for a c2_function which handles the reference counting. It is useful as a smart container to hold a c2_function and keep the reference count correct. The recommended way for a class to store a c2_function which is handed in from the outside is for it to have a c2_ptr member into which the passed-in function is stored. This way, when the class instance is deleted, it will automatically dereference any function which it was handed. 더 자세히 ... | |
class | c2_ptr< float_type > |
class | c2_typed_ptr< float_type, c2_class > |
class | c2_plugin_function_p< float_type > |
class | c2_const_plugin_function_p< float_type > |
class | c2_binary_function< float_type > |
class | c2_scaled_function_p< float_type > |
class | c2_cached_function_p< float_type > |
A container into which any other c2_function can be dropped.It allows a function to be pre-evaluated at a point, and used at multiple places in an expression efficiently. If it is re-evaluated at the previous point, it returns the remembered values; otherwise, it re-evauates the function at the new point. 더 자세히 ... | |
class | c2_composed_function_p< float_type > |
class | c2_sum_p< float_type > |
class | c2_diff_p< float_type > |
class | c2_product_p< float_type > |
create a c2_function which is the product of two other c2_functions.This should always be constructed using c2_function::operator*() 더 자세히 ... | |
class | c2_ratio_p< float_type > |
create a c2_function which is the ratio of two other c2_functions.This should always be constructed using c2_function::operator/() 더 자세히 ... | |
class | c2_constant_p< float_type > |
a c2_function which is constantThe factory function c2_factory::constant() creates *new c2_constant_p() 더 자세히 ... | |
class | c2_transformation< float_type > |
a transformation of a coordinate, including an inverse 더 자세히 ... | |
class | c2_transformation_linear< float_type > |
the identity transform 더 자세히 ... | |
class | c2_transformation_log< float_type > |
log axis transform 더 자세히 ... | |
class | c2_transformation_recip< float_type > |
reciprocal axis transform 더 자세히 ... | |
class | c2_function_transformation< float_type > |
a transformation of a function in and out of a coordinate space, using 2 c2_transformations 더 자세히 ... | |
class | c2_lin_lin_function_transformation< float_type > |
a transformation of a function in and out of lin-lin space 더 자세히 ... | |
class | c2_log_log_function_transformation< float_type > |
a transformation of a function in and out of log-log space 더 자세히 ... | |
class | c2_lin_log_function_transformation< float_type > |
a transformation of a function in and out of lin-log space 더 자세히 ... | |
class | c2_log_lin_function_transformation< float_type > |
a transformation of a function in and out of log-lin space 더 자세히 ... | |
class | c2_arrhenius_function_transformation< float_type > |
a transformation of a function in and out of Arrhenius (1/x vs. log(y)) space 더 자세히 ... | |
class | interpolating_function_p< float_type > |
create a cubic spline interpolation of a set of (x,y) pairsThis is one of the main reasons for c2_function objects to exist. 더 자세히 ... | |
class | log_lin_interpolating_function_p< float_type > |
A spline with X transformed into log space. 더 자세히 ... | |
class | lin_log_interpolating_function_p< float_type > |
A spline with Y transformed into log space.Most useful for functions looking like y=exp(x) 더 자세히 ... | |
class | log_log_interpolating_function_p< float_type > |
A spline with X and Y transformed into log space.Most useful for functions looking like y=x^n or any other function with a huge X and Y dynamic range. 더 자세히 ... | |
class | arrhenius_interpolating_function_p< float_type > |
A spline with X in reciprocal space and Y transformed in log space.Most useful for thermodynamic types of data where Y is roughly A*exp(-B/x). Typical examples are reaction rate data, and thermistor calibration data. 더 자세히 ... | |
class | c2_sin_p< float_type > |
compute sin(x) with its derivatives.The factory function c2_factory::sin() creates *new c2_sin_p 더 자세히 ... | |
class | c2_cos_p< float_type > |
compute cos(x) with its derivatives.The factory function c2_factory::cos() creates *new c2_cos_p 더 자세히 ... | |
class | c2_tan_p< float_type > |
compute tan(x) with its derivatives.The factory function c2_factory::tan() creates *new c2_tan_p 더 자세히 ... | |
class | c2_log_p< float_type > |
compute log(x) with its derivatives.The factory function c2_factory::log() creates *new c2_log_p 더 자세히 ... | |
class | c2_exp_p< float_type > |
compute exp(x) with its derivatives.The factory function c2_factory::exp() creates *new c2_exp_p 더 자세히 ... | |
class | c2_sqrt_p< float_type > |
compute sqrt(x) with its derivatives.The factory function c2_factory::sqrt() creates *new c2_sqrt_p() 더 자세히 ... | |
class | c2_recip_p< float_type > |
compute scale/x with its derivatives.The factory function c2_factory::recip() creates *new c2_recip_p 더 자세히 ... | |
class | c2_identity_p< float_type > |
compute x with its derivatives.The factory function c2_factory::identity() creates *new c2_identity_p 더 자세히 ... | |
class | c2_linear_p< float_type > |
create a linear mapping of another functionfor example, given a c2_function f 더 자세히 ... | |
class | c2_quadratic_p< float_type > |
create a quadratic mapping of another functionfor example, given a c2_function f 더 자세히 ... | |
class | c2_power_law_p< float_type > |
create a power law mapping of another functionfor example, given a c2_function f 더 자세히 ... | |
class | c2_inverse_function_p< float_type > |
create the formal inverse function of another functionfor example, given a c2_function f 더 자세히 ... | |
class | accumulated_histogram< float_type > |
An interpolating_function_p which is the cumulative integral of a histogram.Note than binedges should be one element longer than binheights, since the lower & upper edges are specified. Note that this is a malformed spline, since the second derivatives are all zero, so it has less continuity. Also, note that the bin edges can be given in backwards order to generate the reversed accumulation (starting at the high end) 더 자세히 ... | |
class | c2_connector_function_p< float_type > |
create a c2_function which smoothly connects two other c2_functions.This takes two points and generates a polynomial which matches two c2_function arguments at those two points, with two derivatives at each point, and an arbitrary value at the center of the region. It is useful for splicing together functions over rough spots (0/0, for example). 더 자세히 ... | |
class | c2_piecewise_function_p< float_type > |
create a c2_function which is a piecewise assembly of other c2_functions.The functions must have increasing, non-overlapping domains. Any empty space between functions will be filled with a linear interpolation. 더 자세히 ... | |
매크로 | |
#define | c2_isnan std::isnan |
#define | c2_isfinite std::isfinite |
Provides the headers for the general c2_function algebra which fast, flexible operations on piecewise-twice-differentiable functions.
c2_function.hh 파일에서 정의되었습니다.
#define c2_isfinite std::isfinite |
c2_function.hh 파일의 52 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : c2_function< G4double >::fill_fblock().
#define c2_isnan std::isnan |
c2_function.hh 파일의 51 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : c2_function< G4double >::fill_fblock().