OpenCascade.js
API ReferenceFoundationClassesTKMath

PLib

OCCT package PLib: PLib, PLib_HermitJacobi, PLib_JacobiPolynomial.

PLib

PLib means Polynomial functions library. This pk provides basic computation functions for polynomial functions. Note: weight arrays can be passed by pointer for some functions so that NULL pointer is valid. That means no weights passed.

Constructors(1)

Static methods(36)

  • Used as argument for a non rational functions.

  • Used as argument for a non rational functions.

  • Copy in FP the coordinates of the poles.

    Parameters (2)
    • Poles
    • FP
      Mutated in place; read the updated value from this argument after the call.
  • Copy in FP the coordinates of the poles.

    Parameters (2)
    • Poles
    • FP
      Mutated in place; read the updated value from this argument after the call.
  • Copy in FP the coordinates of the poles.

    Parameters (3)
    • Poles
    • Weights
    • FP
      Mutated in place; read the updated value from this argument after the call.
  • Copy in FP the coordinates of the poles.

    Parameters (3)
    • Poles
    • Weights
    • FP
      Mutated in place; read the updated value from this argument after the call.
  • Get from FP the coordinates of the poles.

    Parameters (2)
    • FP
    • Poles
      Mutated in place; read the updated value from this argument after the call.
  • Get from FP the coordinates of the poles.

    Parameters (2)
    • FP
    • Poles
      Mutated in place; read the updated value from this argument after the call.
  • Get from FP the coordinates of the poles.

    Parameters (3)
    • FP
    • Poles
      Mutated in place; read the updated value from this argument after the call.
    • Weights
      Mutated in place; read the updated value from this argument after the call.
  • Get from FP the coordinates of the poles.

    Parameters (3)
    • FP
    • Poles
      Mutated in place; read the updated value from this argument after the call.
    • Weights
      Mutated in place; read the updated value from this argument after the call.
  • Bin(N: number, P: number): number

    Returns the Binomial Cnp. N should be <= BSplCLib::MaxDegree().

    Parameters (2)
    • N
    • P
  • RationalDerivative(Degree: number, N: number, Dimension: number, Ders: number, RDers: number, All: boolean): { Ders: number; RDers: number }

    Computes the derivatives of a ratio at order <N> in dimension <Dimension>.
    <Ders> is an array containing the values of the input derivatives from 0 to std::min(<N>,<Degree>). For orders higher than <Degree> the inputcd /s2d1/BMDL/ derivatives are assumed to be 0.
    Content of <Ders>:
    x(1),x(2),...,x(Dimension),w x'(1),x'(2),...,x'(Dimension),w' x''(1),x''(2),...,x''(Dimension),w''
    If <All> is false, only the derivative at order <N> is computed. <RDers> is an array of length Dimension which will contain the result:
    x(1)/w , x(2)/w , ... derivated <N> times
    If <All> is true all the derivatives up to order <N> are computed. <RDers> is an array of length Dimension * (N+1) which will contains:
    x(1)/w , x(2)/w , ... x(1)/w , x(2)/w , ... derivated <1> times x(1)/w , x(2)/w , ... derivated <2> times ... x(1)/w , x(2)/w , ... derivated <N> times
    Warning: <RDers> must be dimensioned properly.

    Parameters (6)
    • Degree
    • N
    • Dimension
    • Ders
    • RDers
    • All
    Returns

    A result object with fields:

    • Ders: updated value from the call.
    • RDers: updated value from the call.
  • RationalDerivatives(DerivativesRequest: number, Dimension: number, PolesDerivatives: number, WeightsDerivatives: number, RationalDerivates: number): { PolesDerivatives: number; WeightsDerivatives: number; RationalDerivates: number }

    Computes DerivativesRequest derivatives of a ratio at of a BSpline function of degree <Degree> dimension <Dimension>.
    <PolesDerivatives> is an array containing the values of the input derivatives from 0 to <DerivativeRequest> For orders higher than <Degree> the input derivatives are assumed to be 0.
    Content of <PoleasDerivatives> :
    x(1),x(2),...,x(Dimension) x'(1),x'(2),...,x'(Dimension) x''(1),x''(2),...,x''(Dimension)
    WeightsDerivatives is an array that contains derivatives from 0 to <DerivativeRequest> After returning from the routine the array RationalDerivatives contains the following x(1)/w , x(2)/w , ... x(1)/w , x(2)/w , ... derivated once x(1)/w , x(2)/w , ... twice x(1)/w , x(2)/w , ... derivated <DerivativeRequest> times
    The array RationalDerivatives and PolesDerivatives can be same since the overwrite is non destructive within the algorithm
    Warning: <RationalDerivates> must be dimensioned properly.

    Parameters (5)
    • DerivativesRequest
    • Dimension
    • PolesDerivatives
    • WeightsDerivatives
    • RationalDerivates
    Returns

    A result object with fields:

    • PolesDerivatives: updated value from the call.
    • WeightsDerivatives: updated value from the call.
    • RationalDerivates: updated value from the call.
  • EvalPolynomial(U: number, DerivativeOrder: number, Degree: number, Dimension: number, PolynomialCoeff: number, Results: number): { Results: number }

    Performs Horner method with synthetic division for derivatives parameter , with <Degree> and <Dimension>. PolynomialCoeff are stored in the following fashion.

    c0(1)c0(2)....c0(Dimension) c1(1)c1(2)....c1(Dimension) cDegree(1)cDegree(2)....cDegree(Dimension)

    where the polynomial is defined as :

    2Degree c0+c1X+c2X+....cDegreeX

    Results stores the result in the following format

    f(1)f(2)....f(Dimension) (1)(1)(1) f(1)f(2)....f(Dimension) (DerivativeRequest)(DerivativeRequest) f(1)f(Dimension)

    this just evaluates the point at parameter U
    Warning: <Results> and <PolynomialCoeff> must be dimensioned properly

    Parameters (6)
    • U
    • DerivativeOrder
    • Degree
    • Dimension
    • PolynomialCoeff
    • Results
    Returns

    A result object with fields:

    • Results: updated value from the call.
  • NoDerivativeEvalPolynomial(U: number, Degree: number, Dimension: number, DegreeDimension: number, PolynomialCoeff: number, Results: number): { Results: number }

    Same as above with DerivativeOrder = 0;.

    Parameters (6)
    • U
    • Degree
    • Dimension
    • DegreeDimension
    • PolynomialCoeff
    • Results
    Returns

    A result object with fields:

    • Results: updated value from the call.
  • EvalPoly2Var(U: number, V: number, UDerivativeOrder: number, VDerivativeOrder: number, UDegree: number, VDegree: number, Dimension: number, PolynomialCoeff: number, Results: number): { PolynomialCoeff: number; Results: number }

    Applies EvalPolynomial twice to evaluate the derivative of orders UDerivativeOrder in U, VDerivativeOrder in V at parameters U,V.
    PolynomialCoeff are stored in the following fashion

    c00(1)....c00(Dimension) c10(1)....c10(Dimension) .... cm0(1)....cm0(Dimension) .... c01(1)....c01(Dimension) c11(1)....c11(Dimension) .... cm1(1)....cm1(Dimension) .... c0n(1)....c0n(Dimension) c1n(1)....c1n(Dimension) .... cmn(1)....cmn(Dimension)

    where the polynomial is defined as :

    2m c00+c10U+c20U+....+cm0U 2m +c01V+c11UV+c21UV+....+cm1UV nmn +....+c0nV+....+cmnUV

    with m = UDegree and n = VDegree
    Results stores the result in the following format

    f(1)f(2)....f(Dimension)

    Warning: <Results> and <PolynomialCoeff> must be dimensioned properly

    Parameters (9)
    • U
    • V
    • UDerivativeOrder
    • VDerivativeOrder
    • UDegree
    • VDegree
    • Dimension
    • PolynomialCoeff
    • Results
    Returns

    A result object with fields:

    • PolynomialCoeff: updated value from the call.
    • Results: updated value from the call.
  • EvalLagrange(U: number, DerivativeOrder: number, Degree: number, Dimension: number, ValueArray: number, ParameterArray: number, Results: number): { returnValue: number; ValueArray: number; ParameterArray: number; Results: number }

    Performs the Lagrange Interpolation of given series of points with given parameters with the requested derivative order Results will store things in the following format with d = DerivativeOrder.

    [0],[Dimension-1]:value [Dimension],[Dimension+Dimension-1]:firstderivative [d*Dimension],[d*Dimension+Dimension-1]:dthderivative
    Parameters (7)
    • U
    • DerivativeOrder
    • Degree
    • Dimension
    • ValueArray
    • ParameterArray
    • Results
    Returns

    A result object with fields:

    • returnValue: the C++ return value
    • ValueArray: updated value from the call.
    • ParameterArray: updated value from the call.
    • Results: updated value from the call.
  • EvalCubicHermite(U: number, DerivativeOrder: number, Dimension: number, ValueArray: number, DerivativeArray: number, ParameterArray: number, Results: number): { returnValue: number; ValueArray: number; DerivativeArray: number; ParameterArray: number; Results: number }

    Performs the Cubic Hermite Interpolation of given series of points with given parameters with the requested derivative order. ValueArray stores the value at the first and last parameter. It has the following format :

    [0],[Dimension-1]:valueatfirstparam [Dimension],[Dimension+Dimension-1]:valueatlastparam

    Derivative array stores the value of the derivatives at the first parameter and at the last parameter in the following format

    [0],[Dimension-1]:derivativeat

    first param

    [Dimension],[Dimension+Dimension-1]:derivativeat

    last param
    ParameterArray stores the first and last parameter in the following format :

    [0]:firstparameter [1]:lastparameter

    Results will store things in the following format with d = DerivativeOrder

    [0],[Dimension-1]:value [Dimension],[Dimension+Dimension-1]:firstderivative [d*Dimension],[d*Dimension+Dimension-1]:dthderivative
    Parameters (7)
    • U
    • DerivativeOrder
    • Dimension
    • ValueArray
    • DerivativeArray
    • ParameterArray
    • Results
    Returns

    A result object with fields:

    • returnValue: the C++ return value
    • ValueArray: updated value from the call.
    • DerivativeArray: updated value from the call.
    • ParameterArray: updated value from the call.
    • Results: updated value from the call.
  • HermiteCoefficients(FirstParameter: number, LastParameter: number, FirstOrder: number, LastOrder: number, MatrixCoefs: math_Matrix): boolean

    This build the coefficient of Hermite's polynomes on [FirstParameter, LastParameter].
    if j <= FirstOrder+1 then
    MatrixCoefs[i, j] = ith coefficient of the polynome H0,j-1
    else
    MatrixCoefs[i, j] = ith coefficient of the polynome H1,k with k = j - FirstOrder - 2
    return false if

    • |FirstParameter| > 100
    • |LastParameter| > 100
    • |FirstParameter| +|LastParameter| < 1/100
    • |LastParameter - FirstParameter| / (|FirstParameter| +|LastParameter|) < 1/100
    Parameters (5)
    • FirstParameter
    • LastParameter
    • FirstOrder
    • LastOrder
    • MatrixCoefs
  • Parameters (4)
    • Coefs
    • WCoefs
    • Poles
    • WPoles
  • Parameters (4)
    • Coefs
    • WCoefs
    • Poles
    • WPoles
  • Parameters (4)
    • Coefs
    • WCoefs
    • Poles
    • WPoles
  • Parameters (4)
    • Coefs
    • WCoefs
    • Poles
    • WPoles
  • Parameters (5)
    • dim
    • Coefs
    • WCoefs
    • Poles
    • WPoles
  • Trimming(U1: number, U2: number, Coeffs: NCollection_Array1_gp_Pnt, WCoeffs: NCollection_Array1_double): void
    Parameters (4)
    • U1
    • U2
    • Coeffs
    • WCoeffs
  • Trimming(U1: number, U2: number, Coeffs: NCollection_Array1_gp_Pnt2d, WCoeffs: NCollection_Array1_double): void
    Parameters (4)
    • U1
    • U2
    • Coeffs
    • WCoeffs
  • Trimming(U1: number, U2: number, Coeffs: NCollection_Array1_double, WCoeffs: NCollection_Array1_double): void
    Parameters (4)
    • U1
    • U2
    • Coeffs
    • WCoeffs
  • Trimming(U1: number, U2: number, dim: number, Coeffs: NCollection_Array1_double, WCoeffs: NCollection_Array1_double): void
    Parameters (5)
    • U1
    • U2
    • dim
    • Coeffs
    • WCoeffs
  • UTrimming(U1: number, U2: number, Coeffs: NCollection_Array2_gp_Pnt, WCoeffs: NCollection_Array2_double): void
    Parameters (4)
    • U1
    • U2
    • Coeffs
    • WCoeffs
  • VTrimming(V1: number, V2: number, Coeffs: NCollection_Array2_gp_Pnt, WCoeffs: NCollection_Array2_double): void
    Parameters (4)
    • V1
    • V2
    • Coeffs
    • WCoeffs
  • HermiteInterpolate(Dimension: number, FirstParameter: number, LastParameter: number, FirstOrder: number, LastOrder: number, FirstConstr: NCollection_Array2_double, LastConstr: NCollection_Array2_double, Coefficients: NCollection_Array1_double): boolean

    Compute the coefficients in the canonical base of the polynomial satisfying the given constraints at the given parameters The array FirstContr(i,j) i=1,Dimension j=0,FirstOrder contains the values of the constraint at parameter FirstParameter idem for LastConstr.

    Parameters (8)
    • Dimension
    • FirstParameter
    • LastParameter
    • FirstOrder
    • LastOrder
    • FirstConstr
    • LastConstr
    • Coefficients
      Mutated in place; read the updated value from this argument after the call.
  • JacobiParameters(ConstraintOrder: GeomAbs_Shape, MaxDegree: number, Code: number, NbGaussPoints: number, WorkDegree: number): { NbGaussPoints: number; WorkDegree: number }

    Compute the number of points used for integral computations (NbGaussPoints) and the degree of Jacobi Polynomial (WorkDegree). ConstraintOrder has to be GeomAbs_C0, GeomAbs_C1 or GeomAbs_C2 Code: Code d' init. des parametres de discretisation. = -5 = -4 = -3 = -2 = -1 = 1 calcul rapide avec precision moyenne. = 2 calcul rapide avec meilleure precision. = 3 calcul un peu plus lent avec bonne precision. = 4 calcul lent avec la meilleure precision possible.

    Parameters (5)
    • ConstraintOrder
    • MaxDegree
    • Code
    • NbGaussPoints
    • WorkDegree
    Returns

    A result object with fields:

    • NbGaussPoints: updated value from the call.
    • WorkDegree: updated value from the call.
  • NivConstr(ConstraintOrder: GeomAbs_Shape): number

    translates from GeomAbs_Shape to Integer

    Parameters (1)
    • ConstraintOrder
  • ConstraintOrder(NivConstr: number): GeomAbs_Shape

    translates from Integer to GeomAbs_Shape

    Parameters (1)
    • NivConstr
  • EvalLength(Degree: number, Dimension: number, PolynomialCoeff: number, U1: number, U2: number, Length: number): { PolynomialCoeff: number; Length: number }
    Parameters (6)
    • Degree
    • Dimension
    • PolynomialCoeff
    • U1
    • U2
    • Length
  • EvalLength(Degree: number, Dimension: number, PolynomialCoeff: number, U1: number, U2: number, Tol: number, Length: number, Error: number): { PolynomialCoeff: number; Length: number; Error: number }
    Parameters (8)
    • Degree
    • Dimension
    • PolynomialCoeff
    • U1
    • U2
    • Tol
    • Length
    • Error

PLib_HermitJacobi

This class provides method to work with Jacobi Polynomials relatively to an order of constraint q = myWorkDegree-2*(myNivConstr+1) Jk(t) for k=0,q compose the Jacobi Polynomial base relatively to the weight W(t) iorder is the integer value for the constraints: iorder = 0 <=> ConstraintOrder = GeomAbs_C0 iorder = 1 <=> ConstraintOrder = GeomAbs_C1 iorder = 2 <=> ConstraintOrder = GeomAbs_C2 P(t) = H(t) + W(t) * Q(t) Where W(t) = (1-t2)(2*iordre+2) the coefficients JacCoeff represents P(t) JacCoeff are stored as follow:

c0(1)c0(2)....c0(Dimension) c1(1)c1(2)....c1(Dimension) cDegree(1)cDegree(2)....cDegree(Dimension)

The coefficients

c0(1)c0(2)....c0(Dimension) c2*ordre+1(1)...c2*ordre+1(dimension)

represents the part of the polynomial in the Hermit's base: H(t)

H(t)=c0H00(t)+c1H01(t)+...c(iordre)H(0;iorder)+c(iordre+1)H10(t)+...

The following coefficients represents the part of the polynomial in the Jacobi base ie Q(t)

Q(t)=c2*iordre+2J0(t)+...+cDegreeJDegree-2*iordre-2

Constructors(1)

  • constructor(WorkDegree: number, ConstraintOrder: GeomAbs_Shape): PLib_HermitJacobi

    Initialize the polynomial class Degree has to be <= 30 ConstraintOrder has to be GeomAbs_C0 GeomAbs_C1 GeomAbs_C2.

    Parameters (2)
    • WorkDegree
    • ConstraintOrder

Instance methods(10)

  • MaxError(Dimension: number, HermJacCoeff: number, NewDegree: number): { returnValue: number; HermJacCoeff: number }

    This method computes the maximum error on the polynomial W(t) Q(t) obtained by missing the coefficients of JacCoeff from NewDegree +1 to Degree.

    Parameters (3)
    • Dimension
    • HermJacCoeff
    • NewDegree
    Returns

    A result object with fields:

    • returnValue: the C++ return value
    • HermJacCoeff: updated value from the call.
  • ReduceDegree(Dimension: number, MaxDegree: number, Tol: number, HermJacCoeff: number, NewDegree: number, MaxError: number): { HermJacCoeff: number; NewDegree: number; MaxError: number }

    Compute NewDegree <= MaxDegree so that MaxError is lower than Tol. MaxError can be greater than Tol if it is not possible to find a NewDegree <= MaxDegree. In this case NewDegree = MaxDegree.

    Parameters (6)
    • Dimension
    • MaxDegree
    • Tol
    • HermJacCoeff
    • NewDegree
    • MaxError
    Returns

    A result object with fields:

    • HermJacCoeff: updated value from the call.
    • NewDegree: updated value from the call.
    • MaxError: updated value from the call.
  • AverageError(Dimension: number, HermJacCoeff: number, NewDegree: number): { returnValue: number; HermJacCoeff: number }
    Parameters (3)
    • Dimension
    • HermJacCoeff
    • NewDegree
  • ToCoefficients(Dimension: number, Degree: number, HermJacCoeff: NCollection_Array1_double, Coefficients: NCollection_Array1_double): void

    Convert the polynomial P(t) = H(t) + W(t) Q(t) in the canonical base.

    Parameters (4)
    • Dimension
    • Degree
    • HermJacCoeff
    • Coefficients
      Mutated in place; read the updated value from this argument after the call.
  • D0(U: number, BasisValue: NCollection_Array1_double): void

    Compute the values of the basis functions in u.

    Parameters (2)
    • U
    • BasisValue
      Mutated in place; read the updated value from this argument after the call.
  • D1(U: number, BasisValue: NCollection_Array1_double, BasisD1: NCollection_Array1_double): void

    Compute the values and the derivatives values of the basis functions in u.

    Parameters (3)
    • U
    • BasisValue
      Mutated in place; read the updated value from this argument after the call.
    • BasisD1
      Mutated in place; read the updated value from this argument after the call.
  • D2(U: number, BasisValue: NCollection_Array1_double, BasisD1: NCollection_Array1_double, BasisD2: NCollection_Array1_double): void

    Compute the values and the derivatives values of the basis functions in u.

    Parameters (4)
    • U
    • BasisValue
      Mutated in place; read the updated value from this argument after the call.
    • BasisD1
      Mutated in place; read the updated value from this argument after the call.
    • BasisD2
      Mutated in place; read the updated value from this argument after the call.
  • Compute the values and the derivatives values of the basis functions in u.

    Parameters (5)
    • U
    • BasisValue
      Mutated in place; read the updated value from this argument after the call.
    • BasisD1
      Mutated in place; read the updated value from this argument after the call.
    • BasisD2
      Mutated in place; read the updated value from this argument after the call.
    • BasisD3
      Mutated in place; read the updated value from this argument after the call.
  • WorkDegree(): number

    returns WorkDegree

  • NivConstr(): number

    returns NivConstr

PLib_JacobiPolynomial

This class provides method to work with Jacobi Polynomials relatively to an order of constraint q = myWorkDegree-2*(myNivConstr+1) Jk(t) for k=0,q compose the Jacobi Polynomial base relatively to the weight W(t) iorder is the integer value for the constraints: iorder = 0 <=> ConstraintOrder = GeomAbs_C0 iorder = 1 <=> ConstraintOrder = GeomAbs_C1 iorder = 2 <=> ConstraintOrder = GeomAbs_C2 P(t) = R(t) + W(t) * Q(t) Where W(t) = (1-t2)(2iordre+2) the coefficients JacCoeff represents P(t) JacCoeff are stored as follow:
c0(1) c0(2) .... c0(Dimension) c1(1) c1(2) .... c1(Dimension)
cDegree(1) cDegree(2) .... cDegree(Dimension)
The coefficients c0(1) c0(2) .... c0(Dimension) c2
ordre+1(1) ... c2ordre+1(dimension)
represents the part of the polynomial in the canonical base: R(t) R(t) = c0 + c1 t + ...+ c2
iordre+1 t**2iordre+1 The following coefficients represents the part of the polynomial in the Jacobi base ie Q(t) Q(t) = c2iordre+2 J0(t) + ...+ cDegree JDegree-2*iordre-2

Constructors(1)

  • constructor(theWorkDegree: number, theConstraintOrder: GeomAbs_Shape): PLib_JacobiPolynomial

    Initialize the polynomial class Degree has to be <= 30 ConstraintOrder has to be GeomAbs_C0 GeomAbs_C1 GeomAbs_C2.

    Parameters (2)
    • theWorkDegree
    • theConstraintOrder

Instance methods(13)

  • Points(theNbGaussPoints: number, theTabPoints: NCollection_Array1_double): void

    returns the Jacobi Points for Gauss integration ie the positive values of the Legendre roots by increasing values NbGaussPoints is the number of points chosen for the integral computation. TabPoints (0,NbGaussPoints/2) TabPoints (0) is loaded only for the odd values of NbGaussPoints The possible values for NbGaussPoints are : 8, 10, 15, 20, 25, 30, 35, 40, 50, 61 NbGaussPoints must be greater than Degree

    Parameters (2)
    • theNbGaussPoints
    • theTabPoints
      Mutated in place; read the updated value from this argument after the call.
  • Weights(theNbGaussPoints: number, theTabWeights: NCollection_Array2_double): void

    returns the Jacobi weights for Gauss integration only for the positive values of the Legendre roots in the order they are given by the method Points NbGaussPoints is the number of points chosen for the integral computation. TabWeights (0,NbGaussPoints/2,0,Degree) TabWeights (0,.) are only loaded for the odd values of NbGaussPoints The possible values for NbGaussPoints are: 8, 10, 15, 20, 25, 30, 35, 40, 50, 61 NbGaussPoints must be greater than Degree

    Parameters (2)
    • theNbGaussPoints
    • theTabWeights
      Mutated in place; read the updated value from this argument after the call.
  • this method loads for k=0,q the maximum value of abs ( W(t)Jk(t) ) for t bellonging to [-1,1] This values are loaded is the array TabMax(0,myWorkDegree-2(myNivConst+1)) MaxValue ( me ; TabMaxPointer : in out Real );

    Parameters (1)
    • theTabMax
      Mutated in place; read the updated value from this argument after the call.
  • MaxError(theDimension: number, theJacCoeff: number, theNewDegree: number): { returnValue: number; theJacCoeff: number }

    This method computes the maximum error on the polynomial W(t) Q(t) obtained by missing the coefficients of JacCoeff from NewDegree +1 to Degree.

    Parameters (3)
    • theDimension
    • theJacCoeff
    • theNewDegree
    Returns

    A result object with fields:

    • returnValue: the C++ return value
    • theJacCoeff: updated value from the call.
  • ReduceDegree(theDimension: number, theMaxDegree: number, theTol: number, theJacCoeff: number, theNewDegree: number, theMaxError: number): { theJacCoeff: number; theNewDegree: number; theMaxError: number }

    Compute NewDegree <= MaxDegree so that MaxError is lower than Tol. MaxError can be greater than Tol if it is not possible to find a NewDegree <= MaxDegree. In this case NewDegree = MaxDegree.

    Parameters (6)
    • theDimension
    • theMaxDegree
    • theTol
    • theJacCoeff
    • theNewDegree
    • theMaxError
    Returns

    A result object with fields:

    • theJacCoeff: updated value from the call.
    • theNewDegree: updated value from the call.
    • theMaxError: updated value from the call.
  • AverageError(theDimension: number, theJacCoeff: number, theNewDegree: number): { returnValue: number; theJacCoeff: number }
    Parameters (3)
    • theDimension
    • theJacCoeff
    • theNewDegree
  • ToCoefficients(theDimension: number, theDegree: number, theJacCoeff: NCollection_Array1_double, theCoefficients: NCollection_Array1_double): void

    Convert the polynomial P(t) = R(t) + W(t) Q(t) in the canonical base.

    Parameters (4)
    • theDimension
    • theDegree
    • theJacCoeff
    • theCoefficients
      Mutated in place; read the updated value from this argument after the call.
  • D0(theU: number, theBasisValue: NCollection_Array1_double): void

    Compute the values of the basis functions in u.

    Parameters (2)
    • theU
    • theBasisValue
      Mutated in place; read the updated value from this argument after the call.
  • D1(theU: number, theBasisValue: NCollection_Array1_double, theBasisD1: NCollection_Array1_double): void

    Compute the values and the derivatives values of the basis functions in u.

    Parameters (3)
    • theU
    • theBasisValue
      Mutated in place; read the updated value from this argument after the call.
    • theBasisD1
      Mutated in place; read the updated value from this argument after the call.
  • D2(theU: number, theBasisValue: NCollection_Array1_double, theBasisD1: NCollection_Array1_double, theBasisD2: NCollection_Array1_double): void

    Compute the values and the derivatives values of the basis functions in u.

    Parameters (4)
    • theU
    • theBasisValue
      Mutated in place; read the updated value from this argument after the call.
    • theBasisD1
      Mutated in place; read the updated value from this argument after the call.
    • theBasisD2
      Mutated in place; read the updated value from this argument after the call.
  • D3(theU: number, theBasisValue: NCollection_Array1_double, theBasisD1: NCollection_Array1_double, theBasisD2: NCollection_Array1_double, theBasisD3: NCollection_Array1_double): void

    Compute the values and the derivatives values of the basis functions in u.

    Parameters (5)
    • theU
    • theBasisValue
      Mutated in place; read the updated value from this argument after the call.
    • theBasisD1
      Mutated in place; read the updated value from this argument after the call.
    • theBasisD2
      Mutated in place; read the updated value from this argument after the call.
    • theBasisD3
      Mutated in place; read the updated value from this argument after the call.
  • WorkDegree(): number

    returns WorkDegree

  • NivConstr(): number

    returns NivConstr