b2api
B2000++ API Reference Manual, VERSION 4.6
 
Loading...
Searching...
No Matches
b2000::solver::StaticLinearSolver< T, MATRIX_FORMAT > Class Template Reference

#include "b2static_linear_solver.H"

Inheritance diagram for b2000::solver::StaticLinearSolver< T, MATRIX_FORMAT >:
Collaboration diagram for b2000::solver::StaticLinearSolver< T, MATRIX_FORMAT >:

Public Member Functions

void solve () override
 This function is usually called by the Model instance.
 
bool solve_iteration () override
 This function is called by the Solver instance itself.
 
- Public Member Functions inherited from b2000::Solver
void set_model (Model &model)
 This function is called by the Model instance.
 
void set_case (Case &b2case)
 Make this constant (TB).
 
const bool IsLinear () const
 
bool IsDynamic () const
 
bool IsDamped () const
 
bool IsImplicit () const
 
- Public Member Functions inherited from b2000::Object
virtual const std::string & get_object_name () const
 
virtual ~Object ()
 

Additional Inherited Members

- Static Public Attributes inherited from b2000::Object
static ObjectType type
 
- Protected Member Functions inherited from b2000::Solver
virtual void InitializeSolverOnCase ()
 Initializes the member variables of class Solver for the case at hand.
 
- Protected Attributes inherited from b2000::Solver
Modelmodel_ {}
 
Casecase_ {}
 This also.
 
double time_ {}
 Pseudo time in case of stationary analyses.
 
double time_max_ {1.0}
 End time of simulation.
 
double step_size_ {1.0}
 step size of the simulation.
 
size_t total_num_dof_ {}
 Total number of all degrees of freedom of the system.
 
size_t effective_num_dof_ {}
 Number of "true" unknowns of the global system.
 
int current_stage_ {}
 Current stage number of current case.
 

Detailed Description

template<typename T, typename MATRIX_FORMAT>
class b2000::solver::StaticLinearSolver< T, MATRIX_FORMAT >

Solve the static linear problem defined by:

minimize the function E(x) on the variables x (the potential energy function in a displacement based formulation) defined by: d_E / d_x (x) = K_i * x + f_i - K_e * x - f_e with the linear constraints on x: x = R * x_r + r L * x + l = 0

Where:

  • d_e / d_x is the derivative of E relatively to the variables x.
  • x (vector) is the degree of freedoms (the displacements in a displacement based formulation).
  • K_i (matrix) and f_i (vector) define the linear value of the elements (the internal force in a displacement based formulation). K_i = Sum K_element f_i = Sum f_element
  • K_e (matrix) and f_e (vector) define the linear value of the natural boundary condition (the external force in a displacement based formulation).
  • x_r (vector) is the degree of freedom in the reduction model.
  • R (matrix) and r (vector) define the linear model reduction.
  • L (matrix) and l (vector) define the linear essential boundary conditions.

    This version accepts multiple cases with different model reduction, essential and natural boundary conditions and domain property. In this case, the order of the computation is well optimized to reduce the total cost of the resolution.


The documentation for this class was generated from the following file: