PK_BCURVE_fit_fault_t   

struct PK_BCURVE_fit_fault_s
    {
    PK_LOGICAL_t     no_faults;          --- true if the fit succeeded
    PK_BCURVE_fit_t *status;             --- status for each bcurve
    double          *distance_errors;    --- final maximum distance errors
    double          *angular_errors;     --- final maximum angular errors
    double          *error_parameters;   --- parameters at which the
                                         --- algorithm failed
    };

typedef struct PK_BCURVE_fit_fault_s PK_BCURVE_fit_fault_t;



This structure returns fitting statuses and related data.

Used in:

PK_BCURVE_create_by_fitting



This structure has four fields that are arrays.  The length of each of these
arrays is equal to the 'n_curves' field of the received
'PK_BCURVE_create_by_fitting_o_t' option structure.

The structure's fields are:

'no_faults'         this will have the value 'PK_LOGICAL_true' if the fitting
                    completed as requested i.e. all bcurves have been created,
                    are valid and are within the tolerance(s) provided.

'status'            an array of length 'n_curves' specifying the final
                    status of the attempt to fit each bcurve.

'distance_errors'   an array of length 'n_curves' containing the maximum
                    distance error for each bcurve fitted.  In a successful
                    fitting these distances will be less than the 'tolerance'
                    supplied.  If fitting failed these values may be
                    undefined, depending on the 'status' for the bcurve.

'angular_errors'    an array of length 'n_curves' containing the maximum
                    angular error for each bcurve fitted, if a non-zero
                    angular tolerance was provided.  If no angular tolerance
                    was supplied these values will be zero. If fitting failed
                    these values may be undefined, depending on the 'status'
                    for the bcurve.

'error_parameters'  an array of length 'n_curves' containing the parameter(s)
                    on the bcurves at which the fitting algorithm has failed,
                    if such a failure has occurred. Error parameters will only
                    be returned for certain 'status' values and should be
                    interpreted accordingly.

The 'status' values which return bcurves and associated 'distance_errors' and
'angular_errors' are:

    'PK_BCURVE_fit_success_c'
    'PK_BCURVE_fit_other_failed_c'
    'PK_BCURVE_fit_eval_failure_c'

The 'status' values which return associated 'error_parameters' and the
appropriate interpretations are:

    'PK_BCURVE_fit_eval_failure_c'      the parameter at which the
                                        evaluator failed
    'PK_BCURVE_fit_other_failed_c'      the parameter at which the other
                                        bcurve failed
    'PK_BCURVE_fit_bad_break_parm_c'    the bad break parameter
    'PK_BCURVE_fit_bad_fit_parm_c'      the bad fit parameter