OpenCascade.js
API ReferenceModelingDataTKGeomBase

FEmTool

OCCT package FEmTool: FEmTool_Assembly, FEmTool_Curve, FEmTool_ElementaryCriterion, FEmTool_ElementsOfRefMatrix, and 5 more bound classes.

FEmTool_Assembly

Assemble and solve system from (one dimensional) Finite Elements.

Constructors(1)

Instance methods(12)

  • Nullify all Matrix's Coefficient.

  • AddMatrix(Element: number, Dimension1: number, Dimension2: number, Mat: math_Matrix): void

    Add an elementary Matrix in the assembly Matrix if Dependence(Dimension1,Dimension2) is False.

    Parameters (4)
    • Element
    • Dimension1
    • Dimension2
    • Mat
  • Nullify all Coordinate of assembly Vector (second member).

  • AddVector(Element: number, Dimension: number, Vec: math_Vector): void

    Add an elementary Vector in the assembly Vector (second member).

    Parameters (3)
    • Element
    • Dimension
    • Vec
  • Delete all Constraints.

  • Nullify all Constraints.

  • AddConstraint(IndexofConstraint: number, Element: number, Dimension: number, LinearForm: math_Vector, Value: number): void
    Parameters (5)
    • IndexofConstraint
    • Element
    • Dimension
    • LinearForm
    • Value
  • Solve(): boolean

    Solve the assembly system Returns false if the computation failed.

  • Solution(Solution: math_Vector): void
    Parameters (1)
    • Solution
  • NbGlobVar(): number
  • Returns the assembly table mapping element-local indices to global indices.

    Returns

    const reference to the assembly table

  • GetAssemblyTable(): { AssTable: NCollection_HArray2_handle_NCollection_HArray1_int; [Symbol.dispose](): void }

    Returns the assembly table via output parameter.

    Deprecated
    Returns

    A result object with fields:

    • AssTable: owned by the returned envelope.
      Dispose the returned envelope to release owned Handle fields.

FEmTool_Curve

Curve defined by Polynomial Elements.

Constructors(1)

Static methods(2)

Instance methods(15)

FEmTool_ElementaryCriterion

defined J Criteria to used in minimisation

Static methods(2)

Instance methods(7)

  • Set the coefficient of the Element (the Curve).

    Parameters (1)
    • Coeff
  • Set(FirstKnot: number, LastKnot: number): void

    Set the definition interval of the Element.

    Parameters (2)
    • FirstKnot
    • LastKnot
  • To know if two dimension are independent.

  • Value(): number

    To Compute J(E) where E is the current Element.

  • Hessian(Dim1: number, Dim2: number, H: math_Matrix): void

    To Compute J(E) the coefficients of Hessian matrix of J(E) which are crossed derivatives in dimensions <Dim1> and <Dim2>. If DependenceTable(Dimension1,Dimension2) is False.

    Parameters (3)
    • Dim1
    • Dim2
    • H
  • Gradient(Dim: number, G: math_Vector): void

    To Compute the coefficients in the dimension <dim> of the J(E)'s Gradient where E is the current Element.

    Parameters (2)
    • Dim
    • G

FEmTool_ElementsOfRefMatrix

this class describes the functions needed for calculating matrix elements of RefMatrix for linear criteriums (Tension, Flexion and Jerk) by Gauss integration. Each function from set gives value Pi(u)'*Pj(u)' or Pi(u)''*Pj(u)'' or Pi(u)'''*Pj(u)''' for each i and j, where Pi(u) is i-th basis function of expansion and (') means derivative.

Constructors(1)

Instance methods(3)

  • NbVariables(): number

    returns the number of variables of the function. It is supposed that NbVariables = 1.

  • NbEquations(): number

    returns the number of equations of the function.

  • Value(X: math_Vector, F: math_Vector): boolean

    computes the values <F> of the functions for the variable <X>. returns True if the computation was done successfully, False otherwise. F contains results only for i<=j in following order: P0P0, P0P1, P0P2... P1P1, P1*P2,... (upper triangle of matrix {PiPj})

    Parameters (2)
    • X
    • F

FEmTool_LinearFlexion

Criterium of LinearFlexion To Hermit-Jacobi elements.

Constructors(1)

Static methods(2)

Instance methods(5)

  • To know if two dimension are independent.

  • Value(): number

    To Compute J(E) where E is the current Element.

  • Hessian(Dim1: number, Dim2: number, H: math_Matrix): void

    To Compute J(E) the coefficients of Hessian matrix of J(E) which are crossed derivatives in dimensions <Dim1> and <Dim2>. If DependenceTable(Dimension1,Dimension2) is False.

    Parameters (3)
    • Dim1
    • Dim2
    • H
  • Gradient(Dim: number, G: math_Vector): void

    To Compute the coefficients in the dimension <dim> of the J(E)'s Gradient where E is the current Element.

    Parameters (2)
    • Dim
    • G

FEmTool_LinearJerk

Criterion of LinearJerk To Hermit-Jacobi elements.

Constructors(1)

Static methods(2)

Instance methods(5)

  • To know if two dimension are independent.

  • Value(): number

    To Compute J(E) where E is the current Element.

  • Hessian(Dim1: number, Dim2: number, H: math_Matrix): void

    To Compute J(E) the coefficients of Hessian matrix of J(E) which are crossed derivatives in dimensions <Dim1> and <Dim2>. If DependenceTable(Dimension1,Dimension2) is False.

    Parameters (3)
    • Dim1
    • Dim2
    • H
  • Gradient(Dim: number, G: math_Vector): void

    To Compute the coefficients in the dimension <dim> of the J(E)'s Gradient where E is the current Element.

    Parameters (2)
    • Dim
    • G

FEmTool_LinearTension

Criterium of LinearTension To Hermit-Jacobi elements.

Constructors(1)

Static methods(2)

Instance methods(5)

  • To know if two dimension are independent.

  • Value(): number

    To Compute J(E) where E is the current Element.

  • Hessian(Dim1: number, Dim2: number, H: math_Matrix): void

    To Compute J(E) the coefficients of Hessian matrix of J(E) which are crossed derivatives in dimensions <Dim1> and <Dim2>. If DependenceTable(Dimension1,Dimension2) is False.

    Parameters (3)
    • Dim1
    • Dim2
    • H
  • Gradient(Dim: number, G: math_Vector): void

    To Compute the coefficients in the dimension <dim> of the J(E)'s Gradient where E is the current Element.

    Parameters (2)
    • Dim
    • G

FEmTool_ProfileMatrix

Symmetric Sparse ProfileMatrix useful for 1D Finite Element methods.

Constructors(1)

Static methods(2)

Instance methods(13)

  • Init(Value: number): void
    Parameters (1)
    • Value
  • ChangeValue(I: number, J: number): number
    Parameters (2)
    • I
    • J
  • Decompose(): boolean

    To make a Factorization of <me>.

  • Solve(B: math_Vector, X: math_Vector): void

    Direct Solve of AX = B.

    Parameters (2)
    • B
    • X
  • Solve(B: math_Vector, Init: math_Vector, X: math_Vector, Residual: math_Vector, Tolerance: number, NbIterations: number): void

    Iterative solve of AX = B.

    Parameters (6)
    • B
    • Init
    • X
    • Residual
    • Tolerance
    • NbIterations
  • Prepare(): boolean

    Make Preparation to iterative solve.

  • Multiplied(X: math_Vector, MX: math_Vector): void

    returns the product of a SparseMatrix by a vector. An exception is raised if the dimensions are different

    Parameters (2)
    • X
    • MX
  • RowNumber(): number

    returns the row range of a matrix.

  • ColNumber(): number

    returns the column range of the matrix.

  • IsInProfile(i: number, j: number): boolean
    Parameters (2)
    • i
    • j
  • OutM(): void
  • OutS(): void

FEmTool_SparseMatrix

Sparse Matrix definition.

Static methods(2)

Instance methods(10)

  • Init(Value: number): void
    Parameters (1)
    • Value
  • ChangeValue(I: number, J: number): number
    Parameters (2)
    • I
    • J
  • Decompose(): boolean

    To make a Factorization of <me>.

  • Solve(B: math_Vector, X: math_Vector): void

    Direct Solve of AX = B.

    Parameters (2)
    • B
    • X
  • Solve(B: math_Vector, Init: math_Vector, X: math_Vector, Residual: math_Vector, Tolerance: number, NbIterations: number): void

    Iterative solve of AX = B.

    Parameters (6)
    • B
    • Init
    • X
    • Residual
    • Tolerance
    • NbIterations
  • Prepare(): boolean

    Make Preparation to iterative solve.

  • Multiplied(X: math_Vector, MX: math_Vector): void

    returns the product of a SparseMatrix by a vector. An exception is raised if the dimensions are different

    Parameters (2)
    • X
    • MX
  • RowNumber(): number

    returns the row range of a matrix.

  • ColNumber(): number

    returns the column range of the matrix.