File indexing completed on 2026-09-18 09:20:11
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _FEmTool_LinearJerk_HeaderFile
0018 #define _FEmTool_LinearJerk_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_Type.hxx>
0022
0023 #include <math_Matrix.hxx>
0024 #include <Standard_Integer.hxx>
0025 #include <FEmTool_ElementaryCriterion.hxx>
0026 #include <GeomAbs_Shape.hxx>
0027 #include <NCollection_Array2.hxx>
0028 #include <NCollection_HArray2.hxx>
0029 #include <math_Vector.hxx>
0030
0031
0032 class FEmTool_LinearJerk : public FEmTool_ElementaryCriterion
0033 {
0034
0035 public:
0036 Standard_EXPORT FEmTool_LinearJerk(const int WorkDegree, const GeomAbs_Shape ConstraintOrder);
0037
0038 Standard_EXPORT occ::handle<NCollection_HArray2<int>> DependenceTable() const override;
0039
0040 Standard_EXPORT double Value() override;
0041
0042 Standard_EXPORT void Hessian(const int Dimension1, const int Dimension2, math_Matrix& H) override;
0043
0044 Standard_EXPORT void Gradient(const int Dimension, math_Vector& G) override;
0045
0046 DEFINE_STANDARD_RTTIEXT(FEmTool_LinearJerk, FEmTool_ElementaryCriterion)
0047
0048 private:
0049 math_Matrix RefMatrix;
0050 int myOrder;
0051 };
0052
0053 #endif