30 void Foam::SIBS::SIMPR
42 scalar h = deltaX/nSteps;
49 a(i, j) = -h*dfdy(i, j);
59 yEnd[i] = h*(dydx[i] + h*dfdx[i]);
69 ytemp[i] = y[i] + del[i];
72 scalar x = xStart +
h;
76 for (
label nn=2; nn<=nSteps; nn++)
80 yEnd[i] = h*yEnd[i] - del[i];
87 ytemp[i] += (del[i] += 2.0*yEnd[i]);
96 yEnd[i] = h*yEnd[i] - del[i];
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void LUDecompose(scalarSquareMatrix &matrix, labelList &pivotIndices)
LU decompose the matrix with pivoting.
const ODESystem & odes_
Reference to ODESystem.
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
List< label > labelList
A List of labels.
volScalarField scalarField(fieldObject, mesh)
volScalarField & h
Planck constant.
label n_
Size of the ODESystem (adjustable)
SquareMatrix< scalar > scalarSquareMatrix
virtual void derivatives(const scalar x, const scalarField &y, scalarField &dydx) const =0
Calculate the derivatives in dydx.
void LUBacksubstitute(const scalarSquareMatrix &luMmatrix, const labelList &pivotIndices, List< Type > &source)
LU back-substitution with given source, returning the solution.