|
FEBio
1.5.0
|
#include <FEHeatSolver.h>
Public Member Functions | |
| FEHeatSolver (FEM &fem) | |
| constructor | |
| bool | Init () |
| one-time initialization | |
| bool | SolveStep (double time) |
| solve a timestep | |
| void | Serialize (DumpFile &ar) |
| serialize data | |
| bool | InitEquations () |
| Initialize linear equation system. | |
| void | AssembleStiffness (matrix &ke, vector< int > &lm) |
| assemble element stiffness matrix | |
Data Fields | |
| vector< double > | m_T |
| temperature array | |
| vector< double > | m_Tp |
| previous temperatures | |
| vector< double > | m_R |
| residual | |
| vector< double > | m_u |
| prescribed temperatures | |
Protected Member Functions | |
| void | Residual () |
| calculate the residual | |
| bool | StiffnessMatrix () |
| calculate the stiffness matrix | |
| bool | ReformStiffness () |
| form the stiffness matrix | |
| void | Update (vector< double > &u) |
| update solution | |
The FEHeatSolver solves heat-conduction problems
| FEHeatSolver::FEHeatSolver | ( | FEM & | fem | ) |
constructor
constructor for the class
| void FEHeatSolver::AssembleStiffness | ( | matrix & | ke, |
| vector< int > & | lm | ||
| ) |
assemble element stiffness matrix
Assembles the element stiffness matrix into the global stiffness matrix. This function also modifies the residual according to the prescribed degrees of freedom.
| bool FEHeatSolver::Init | ( | ) | [virtual] |
| bool FEHeatSolver::InitEquations | ( | ) | [virtual] |
Initialize linear equation system.
This function initializes the equation system. It is assumed that all free dofs up until now have been given an ID >= 0 and the fixed or rigid dofs an ID < 0. After this operation the nodal ID array will contain the equation number assigned to the corresponding degree of freedom. To distinguish between free or unconstrained dofs and constrained ones the following rules apply to the ID array:
/ | >= 0 --> dof j of node i is a free dof ID[i][j] < == -1 --> dof j of node i is a fixed (no equation assigned too) | < -1 --> dof j of node i is constrained and has equation nr = -ID[i][j]-2 \
Implements FESolver.
| bool FEHeatSolver::ReformStiffness | ( | ) | [protected] |
form the stiffness matrix
Reform the stiffness matrix. That is, calculate the shape of the stiffness matrix (i.e. figure out the sparsity pattern), fill the stiffness matrix with the element contributions and then factor the matrix.
| void FEHeatSolver::Residual | ( | ) | [protected] |
calculate the residual
Calculate the residual.
| void FEHeatSolver::Serialize | ( | DumpFile & | ar | ) | [virtual] |
| bool FEHeatSolver::SolveStep | ( | double | time | ) | [virtual] |
| bool FEHeatSolver::StiffnessMatrix | ( | ) | [protected] |
calculate the stiffness matrix
Calculate the global stiffness matrix. This function simply calls FEHeatSolver::ElementStiffness() for each element and then assembles the element stiffness matrix into the global matrix.
1.7.5.1