Package by.andd3dfx.math.pde.solver
Class ParabolicEquationSolver
java.lang.Object
by.andd3dfx.math.pde.solver.AbstractEquationSolver<ParabolicEquation>
by.andd3dfx.math.pde.solver.ParabolicEquationSolver
- All Implemented Interfaces:
EquationSolver<ParabolicEquation>
Solver for parabolic partial differential equations.
Implements numerical method for solving parabolic equations using
implicit finite difference scheme. The algorithm is based on the Thomas algorithm
for solving tridiagonal systems of linear equations.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class by.andd3dfx.math.pde.solver.AbstractEquationSolver
AbstractEquationSolver.KappaNu
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionsolve
(ParabolicEquation eqn, double h, double tau) Solves parabolic partial differential equation using numerical method.Methods inherited from class by.andd3dfx.math.pde.solver.AbstractEquationSolver
buildArea, calcKappaNu, prepare, solve3DiagonalEquationsSystem
-
Constructor Details
-
ParabolicEquationSolver
public ParabolicEquationSolver()
-
-
Method Details
-
solve
Solves parabolic partial differential equation using numerical method. Uses implicit finite difference scheme with weights for derivative approximation. Solution is found using the Thomas algorithm on each time step.- Parameters:
eqn
- parabolic partial differential equation to solveh
- spatial step size (must be positive)tau
- time step size (must be positive)- Returns:
- equation solution containing function values at all grid points
- Throws:
IllegalArgumentException
- if parameters h or tau are non-positive
-