public static interface FeynmanKac.Boundaries
Modifier and Type | Method and Description |
---|---|
void |
leftBoundaries(double time,
double[][] coefficients)
Returns the coefficient values of the left boundary conditions.
|
void |
rightBoundaries(double time,
double[][] coefficients)
Returns the coefficient values of the right boundary conditions.
|
double |
terminal(double z)
Returns the terminal condition value.
|
void leftBoundaries(double time, double[][] coefficients)
numLeftBounds
conditions specified at the left end,
\(x_{\min}\). The left boundary conditions are
$$
a_i(x,t)f+b_i(x,t)f_x+c_i(x,t)f_{xx} = d_i(x,t),\, x=x_{\min},\, 1 \le i \le \text{numLeftBounds}.
$$
Time dependency of the boundary coefficients can be
controlled via method setTimeDependence
.
Use of this method will usually yield a more efficient
algorithm because some finite element matrices do not
have to be reassembled for each t
value.
time
- a double
, the time point at which the boundary
coefficients are to be evaluated.coefficients
- an output double
array of dimension
numLeftBounds
by 4 containing the computed boundary
coefficient values. The coefficients are stored row-wise according
to the matrix scheme
$$
( a_i(x_{\min},t), b_i(x_{\min},t),c_i(x_{\min},t), d_i(x_{\min},t) )_{1 \le i \le \text{numLeftBounds}}\,.
$$void rightBoundaries(double time, double[][] coefficients)
numRightBounds
conditions specified at the right end,
\(x_{\max}\). The right boundary conditions are
$$
a_i(x,t)f+b_i(x,t)f_x+c_i(x,t)f_{xx} = d_i(x,t),\, x=x_{\max},\, 1 \le i \le \text{numRightBounds}.
$$
Time dependency of the boundary coefficients can be
controlled via method setTimeDependence
.
Use of this method will usually yield a more efficient
algorithm because some finite element matrices do not
have to be reassembled for each t
value.
time
- a double
, the time point at which the boundary
coefficients are to be evaluated.coefficients
- an output double
array of dimension
numRightBounds
by 4, containing the computed
boundary coefficient values. The coefficients are stored row-wise
according to the matrix scheme
$$
( a_i(x_{\max},t), b_i(x_{\max},t),c_i(x_{\max},t), d_i(x_{\max},t) )_{1 \le i \le \text{numRightBounds}}\,.
$$double terminal(double z)
z
- a double
scalar, the point in x-
direction,
where the terminal condition is evaluated.double
scalar, the value of the terminal condition
\(p(x)\) at point z
.Copyright © 2020 Rogue Wave Software. All rights reserved.