File indexing completed on 2025-01-18 10:02:57
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _AppDef_TheGradient_HeaderFile
0018 #define _AppDef_TheGradient_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <AppParCurves_MultiCurve.hxx>
0025 #include <math_Vector.hxx>
0026 #include <Standard_Real.hxx>
0027 #include <Standard_Integer.hxx>
0028 #include <AppParCurves_HArray1OfConstraintCouple.hxx>
0029 class Standard_OutOfRange;
0030 class StdFail_NotDone;
0031 class AppDef_MultiLine;
0032 class AppDef_MyLineTool;
0033 class AppDef_ParLeastSquareOfTheGradient;
0034 class AppDef_ResConstraintOfTheGradient;
0035 class AppDef_ParFunctionOfTheGradient;
0036 class AppDef_Gradient_BFGSOfTheGradient;
0037 class AppParCurves_MultiCurve;
0038
0039
0040
0041 class AppDef_TheGradient
0042 {
0043 public:
0044
0045 DEFINE_STANDARD_ALLOC
0046
0047
0048
0049
0050
0051
0052
0053
0054 Standard_EXPORT AppDef_TheGradient(const AppDef_MultiLine& SSP, const Standard_Integer FirstPoint, const Standard_Integer LastPoint, const Handle(AppParCurves_HArray1OfConstraintCouple)& TheConstraints, math_Vector& Parameters, const Standard_Integer Deg, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Integer NbIterations = 200);
0055
0056
0057 Standard_EXPORT Standard_Boolean IsDone() const;
0058
0059
0060
0061 Standard_EXPORT AppParCurves_MultiCurve Value() const;
0062
0063
0064
0065
0066
0067 Standard_EXPORT Standard_Real Error (const Standard_Integer Index) const;
0068
0069
0070
0071 Standard_EXPORT Standard_Real MaxError3d() const;
0072
0073
0074
0075 Standard_EXPORT Standard_Real MaxError2d() const;
0076
0077
0078
0079 Standard_EXPORT Standard_Real AverageError() const;
0080
0081
0082
0083
0084 protected:
0085
0086
0087
0088
0089
0090 private:
0091
0092
0093
0094 AppParCurves_MultiCurve SCU;
0095 math_Vector ParError;
0096 Standard_Real AvError;
0097 Standard_Real MError3d;
0098 Standard_Real MError2d;
0099 Standard_Boolean Done;
0100
0101
0102 };
0103
0104
0105
0106
0107
0108
0109
0110 #endif