match_funct_1d_trans T_match_funct_1d_trans MatchFunct1dTrans MatchFunct1dTrans (Operator)
Name
match_funct_1d_trans T_match_funct_1d_trans MatchFunct1dTrans MatchFunct1dTrans
— Calculate transformation parameters between two functions.
Signature
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 )
Description
match_funct_1d_trans match_funct_1d_trans MatchFunct1dTrans MatchFunct1dTrans MatchFunct1dTrans
calculates the transformation parameters
between two functions given as the tuples Function1 Function1 Function1 Function1 function1
and
Function2 Function2 Function2 Function2 function2
(see create_funct_1d_array create_funct_1d_array CreateFunct1dArray CreateFunct1dArray CreateFunct1dArray
and
create_funct_1d_pairs create_funct_1d_pairs CreateFunct1dPairs CreateFunct1dPairs CreateFunct1dPairs
). 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 Border Border Border Border border
determines
the values of the function Function2 Function2 Function2 Function2 function2
outside of its domain.
For Border Border Border Border border
='zero' "zero" "zero" "zero" "zero" these values are set to 0, for
Border Border Border Border border
='constant' "constant" "constant" "constant" "constant" they are set to the
corresponding value at the border, for
Border Border Border Border border
='mirror' "mirror" "mirror" "mirror" "mirror" they are mirrored at the border,
and for Border Border Border Border border
='cyclic' "cyclic" "cyclic" "cyclic" "cyclic" they are continued
cyclically. The calculated transformation parameters are returned
as a 4-tuple
in
Params Params Params Params paramsVal
. 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 UseParams UseParams UseParams UseParams useParams
to the value 'false' "false" "false" "false" "false" . In this
case, the tuple ParamsConst ParamsConst ParamsConst ParamsConst paramsConst
must contain the known value of
the respective parameter. If a parameter is used for the adjustment
(UseParams UseParams UseParams UseParams useParams
= 'true' "true" "true" "true" "true" ), the corresponding parameter
in ParamsConst ParamsConst ParamsConst ParamsConst paramsConst
is ignored. On output,
match_funct_1d_trans match_funct_1d_trans MatchFunct1dTrans MatchFunct1dTrans MatchFunct1dTrans
additionally returns the sum of the
squared errors ChiSquare ChiSquare ChiSquare ChiSquare chiSquare
of the resulting function, i.e.,
the function obtained by transforming the input function with the
transformation parameters, as well as the covariance matrix
Covar Covar Covar Covar covar
of the transformation parameters Params Params Params Params paramsVal
.
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_trans match_funct_1d_trans MatchFunct1dTrans MatchFunct1dTrans MatchFunct1dTrans
either
returns one selected single solution or returns the error 9205
(Matrix is singular).
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Processed without parallelization.
Parameters
Function1 Function1 Function1 Function1 function1
(input_control) function_1d →
HFunction1D , HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Function 1.
Function2 Function2 Function2 Function2 function2
(input_control) function_1d →
HFunction1D , HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Function 2.
Border Border Border Border border
(input_control) string →
HTuple HTuple Htuple (string) (string ) (HString ) (char* )
Border treatment for function 2.
Default value:
'constant'
"constant"
"constant"
"constant"
"constant"
List of values: 'constant' "constant" "constant" "constant" "constant" , 'cyclic' "cyclic" "cyclic" "cyclic" "cyclic" , 'mirror' "mirror" "mirror" "mirror" "mirror" , 'zero' "zero" "zero" "zero" "zero"
ParamsConst ParamsConst ParamsConst ParamsConst paramsConst
(input_control) number-array →
HTuple HTuple Htuple (real) (double ) (double ) (double )
Values of the parameters to remain constant.
Number of elements: 4
Default value: [1.0,0.0,1.0,0.0]
UseParams UseParams UseParams UseParams useParams
(input_control) string-array →
HTuple HTuple Htuple (string) (string ) (HString ) (char* )
Should a parameter be adapted for it?
Number of elements: 4
Default value:
['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" , 'true' "true" "true" "true" "true"
Params Params Params Params paramsVal
(output_control) number-array →
HTuple HTuple Htuple (real) (double ) (double ) (double )
Transformation parameters between the functions.
Number of elements: 4
ChiSquare ChiSquare ChiSquare ChiSquare chiSquare
(output_control) number →
HTuple HTuple Htuple (real) (double ) (double ) (double )
Quadratic error of the output function.
Covar Covar Covar Covar covar
(output_control) number-array →
HTuple HTuple Htuple (real) (double ) (double ) (double )
Covariance Matrix of the transformation parameters.
Number of elements: 16
Possible Predecessors
create_funct_1d_array create_funct_1d_array CreateFunct1dArray CreateFunct1dArray CreateFunct1dArray
,
create_funct_1d_pairs create_funct_1d_pairs CreateFunct1dPairs CreateFunct1dPairs CreateFunct1dPairs
See also
gray_projections gray_projections GrayProjections GrayProjections GrayProjections
Module
Foundation