match_funct_1d_transT_match_funct_1d_transMatchFunct1dTransMatchFunct1dTransmatch_funct_1d_trans (Operator)

Name

match_funct_1d_transT_match_funct_1d_transMatchFunct1dTransMatchFunct1dTransmatch_funct_1d_trans — Calculate transformation parameters between two functions.

Signature

match_funct_1d_trans( : : Function1, Function2, Border, ParamsConst, UseParams : Params, ChiSquare, Covar)

Herror T_match_funct_1d_trans(const Htuple Function1, const Htuple Function2, const Htuple Border, const Htuple ParamsConst, const Htuple UseParams, Htuple* Params, Htuple* ChiSquare, Htuple* Covar)

void MatchFunct1dTrans(const HTuple& Function1, const HTuple& Function2, const HTuple& Border, const HTuple& ParamsConst, const HTuple& UseParams, HTuple* Params, HTuple* ChiSquare, HTuple* Covar)

HTuple HFunction1D::MatchFunct1dTrans(const HFunction1D& Function2, const HString& Border, const HTuple& ParamsConst, const HTuple& UseParams, double* ChiSquare, HTuple* Covar) const

HTuple HFunction1D::MatchFunct1dTrans(const HFunction1D& Function2, const char* Border, const HTuple& ParamsConst, const HTuple& UseParams, double* ChiSquare, HTuple* Covar) const

HTuple HFunction1D::MatchFunct1dTrans(const HFunction1D& Function2, const wchar_t* Border, const HTuple& ParamsConst, const HTuple& UseParams, double* ChiSquare, HTuple* Covar) const   ( Windows only)

static void HOperatorSet.MatchFunct1dTrans(HTuple function1, HTuple function2, HTuple border, HTuple paramsConst, HTuple useParams, out HTuple paramsVal, out HTuple chiSquare, out HTuple covar)

HTuple HFunction1D.MatchFunct1dTrans(HFunction1D function2, string border, HTuple paramsConst, HTuple useParams, out double chiSquare, out HTuple covar)

def match_funct_1d_trans(function_1: Sequence[Union[float, int]], function_2: Sequence[Union[float, int]], border: str, params_const: Sequence[float], use_params: Sequence[str]) -> Tuple[Sequence[float], float, Sequence[float]]

Description

match_funct_1d_transmatch_funct_1d_transMatchFunct1dTransMatchFunct1dTransMatchFunct1dTransmatch_funct_1d_trans calculates the transformation parameters between two functions given as the tuples Function1Function1Function1Function1function1function_1 and Function2Function2Function2Function2function2function_2 (see create_funct_1d_arraycreate_funct_1d_arrayCreateFunct1dArrayCreateFunct1dArrayCreateFunct1dArraycreate_funct_1d_array and create_funct_1d_pairscreate_funct_1d_pairsCreateFunct1dPairsCreateFunct1dPairsCreateFunct1dPairscreate_funct_1d_pairs). The following model is used for the transformation between the two functions: The transformation parameters are determined by a least-squares minimization of the following function: The values of the function are obtained by linear interpolation. The parameter BorderBorderBorderBorderborderborder determines the values of the function Function2Function2Function2Function2function2function_2 outside of its domain. For BorderBorderBorderBorderborderborder='zero'"zero""zero""zero""zero""zero" these values are set to 0, for BorderBorderBorderBorderborderborder='constant'"constant""constant""constant""constant""constant" they are set to the corresponding value at the border, for BorderBorderBorderBorderborderborder='mirror'"mirror""mirror""mirror""mirror""mirror" they are mirrored at the border, and for BorderBorderBorderBorderborderborder='cyclic'"cyclic""cyclic""cyclic""cyclic""cyclic" they are continued cyclically. The calculated transformation parameters are returned as a 4-tuple in ParamsParamsParamsParamsparamsValparams. If some of the parameter values are known, the respective parameters can be excluded from the least-squares adjustment by setting the corresponding value in the tuple UseParamsUseParamsUseParamsUseParamsuseParamsuse_params to the value 'false'"false""false""false""false""false". In this case, the tuple ParamsConstParamsConstParamsConstParamsConstparamsConstparams_const must contain the known value of the respective parameter. If a parameter is used for the adjustment (UseParamsUseParamsUseParamsUseParamsuseParamsuse_params = 'true'"true""true""true""true""true"), the corresponding parameter in ParamsConstParamsConstParamsConstParamsConstparamsConstparams_const is ignored. On output, match_funct_1d_transmatch_funct_1d_transMatchFunct1dTransMatchFunct1dTransMatchFunct1dTransmatch_funct_1d_trans additionally returns the sum of the squared errors ChiSquareChiSquareChiSquareChiSquarechiSquarechi_square of the resulting function, i.e., the function obtained by transforming the input function with the transformation parameters, as well as the covariance matrix CovarCovarCovarCovarcovarcovar of the transformation parameters ParamsParamsParamsParamsparamsValparams. These parameters can be used to decide whether a successful matching of the functions was possible.

Note that in case that there is no unique solution for the transformation parameters, match_funct_1d_transmatch_funct_1d_transMatchFunct1dTransMatchFunct1dTransMatchFunct1dTransmatch_funct_1d_trans either returns one selected single solution or returns the error 9205 (Matrix is singular).

Execution Information

Parameters

Function1Function1Function1Function1function1function_1 (input_control)  function_1d HFunction1D, HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Function 1.

Function2Function2Function2Function2function2function_2 (input_control)  function_1d HFunction1D, HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Function 2.

BorderBorderBorderBorderborderborder (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Border treatment for function 2.

Default: 'constant' "constant" "constant" "constant" "constant" "constant"

List of values: 'constant'"constant""constant""constant""constant""constant", 'cyclic'"cyclic""cyclic""cyclic""cyclic""cyclic", 'mirror'"mirror""mirror""mirror""mirror""mirror", 'zero'"zero""zero""zero""zero""zero"

ParamsConstParamsConstParamsConstParamsConstparamsConstparams_const (input_control)  number-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Values of the parameters to remain constant.

Number of elements: 4

Default: [1.0,0.0,1.0,0.0]

UseParamsUseParamsUseParamsUseParamsuseParamsuse_params (input_control)  string-array HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)

Should a parameter be adapted for it?

Number of elements: 4

Default: ['true','true','true','true'] ["true","true","true","true"] ["true","true","true","true"] ["true","true","true","true"] ["true","true","true","true"] ["true","true","true","true"]

List of values: 'false'"false""false""false""false""false", 'true'"true""true""true""true""true"

ParamsParamsParamsParamsparamsValparams (output_control)  number-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Transformation parameters between the functions.

Number of elements: 4

ChiSquareChiSquareChiSquareChiSquarechiSquarechi_square (output_control)  number HTuplefloatHTupleHtuple (real) (double) (double) (double)

Quadratic error of the output function.

CovarCovarCovarCovarcovarcovar (output_control)  number-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Covariance Matrix of the transformation parameters.

Number of elements: 16

Possible Predecessors

create_funct_1d_arraycreate_funct_1d_arrayCreateFunct1dArrayCreateFunct1dArrayCreateFunct1dArraycreate_funct_1d_array, create_funct_1d_pairscreate_funct_1d_pairsCreateFunct1dPairsCreateFunct1dPairsCreateFunct1dPairscreate_funct_1d_pairs

See also

gray_projectionsgray_projectionsGrayProjectionsGrayProjectionsGrayProjectionsgray_projections

Module

Foundation