b2api
B2000++ API Reference Manual, VERSION 4.6
 
Loading...
Searching...
No Matches
b2000::Model Class Referenceabstract

#include "b2model.H"

Inheritance diagram for b2000::Model:
Collaboration diagram for b2000::Model:

Public Member Functions

virtual void init (const std::string &dbname="", Dictionary *cmdline_set_=nullptr)=0
 
virtual CaseListget_case_list ()=0
 
virtual const int get_handle ()=0
 
virtual Domainget_domain ()=0
 
virtual NaturalBoundaryConditionget_natural_boundary_condition (ObjectTypeIncomplete< NaturalBoundaryCondition > *bc_type)=0
 
virtual EssentialBoundaryConditionget_essential_boundary_condition (ObjectTypeIncomplete< EssentialBoundaryCondition > *bc_type)=0
 
virtual ModelReductionBoundaryConditionget_model_reduction_boundary_condition (ObjectTypeIncomplete< ModelReductionBoundaryCondition > *bc_type)=0
 
virtual InitialConditionget_initial_condition ()=0
 
virtual Solutionget_solution ()=0
 
virtual Solverget_solver ()=0
 
virtual void run ()
 
virtual void set_case (Case &case_)=0
 
virtual Caseget_case ()=0
 
virtual void get_subcase_ids (std::set< int > &subcase_ids_) const =0
 
virtual void set_subcase_id (const int subcase_id_)=0
 
virtual int get_subcase_id () const =0
 
- 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
 

Detailed Description

The Finite Element model to solve.

It creates all objects needed by the Solver instance:

According to the Case list, it creates a Solver instance of the specified class (e.g. StaticLinear, StaticNonlinear, ...) and strategies (e.g. accuracy, maximum number of iterations, ... ).

Finally, it calls the solve method of the created Solver instance with the Domain, NaturalBoundaryCondition, EssentialBoundaryCondition, InitialCondition, and Solution instances to solve the FE problem.

Member Function Documentation

◆ get_case()

virtual Case * b2000::Model::get_case ( )
pure virtual

Get the current case.

Returns
a pointer to the Case object describing the current load case.

Implemented in b2000::b2dbv3::Model.

◆ get_case_list()

virtual CaseList & b2000::Model::get_case_list ( )
pure virtual

Get the list of cases of the model.

Implemented in b2000::b2dbv3::Model.

◆ get_domain()

virtual Domain & b2000::Model::get_domain ( )
pure virtual

Get the Domain instance.

Implemented in b2000::b2dbv3::Model.

◆ get_essential_boundary_condition()

virtual EssentialBoundaryCondition & b2000::Model::get_essential_boundary_condition ( ObjectTypeIncomplete< EssentialBoundaryCondition > *  bc_type)
pure virtual

Get the essential boundary conditions.

Implemented in b2000::b2dbv3::Model.

◆ get_handle()

virtual const int b2000::Model::get_handle ( )
pure virtual

Get the MemCom database handle, if any, or 0 if not defined.

Implemented in b2000::b2dbv3::Model.

◆ get_initial_condition()

virtual InitialCondition & b2000::Model::get_initial_condition ( )
pure virtual

Get the initial condition.

Implemented in b2000::b2dbv3::Model.

◆ get_model_reduction_boundary_condition()

virtual ModelReductionBoundaryCondition & b2000::Model::get_model_reduction_boundary_condition ( ObjectTypeIncomplete< ModelReductionBoundaryCondition > *  bc_type)
pure virtual

Get the model reduction boundary conditions.

Implemented in b2000::b2dbv3::Model.

◆ get_natural_boundary_condition()

virtual NaturalBoundaryCondition & b2000::Model::get_natural_boundary_condition ( ObjectTypeIncomplete< NaturalBoundaryCondition > *  bc_type)
pure virtual

Get the natural boundary conditions.

Implemented in b2000::b2dbv3::Model.

◆ get_solution()

virtual Solution & b2000::Model::get_solution ( )
pure virtual

Get the Solution object that will hold the solution data.

Implemented in b2000::b2dbv3::Model.

◆ get_solver()

virtual Solver & b2000::Model::get_solver ( )
pure virtual

Get the Solver object.

Implemented in b2000::b2dbv3::Model.

◆ get_subcase_id()

virtual int b2000::Model::get_subcase_id ( ) const
pure virtual

Get the analysis subcase.

Implemented in b2000::b2dbv3::Model.

◆ get_subcase_ids()

virtual void b2000::Model::get_subcase_ids ( std::set< int > &  subcase_ids_) const
pure virtual

Get the list of subcases that are defined for the current case, using the Case object.

Implemented in b2000::b2dbv3::Model.

◆ init()

virtual void b2000::Model::init ( const std::string &  dbname = "",
Dictionary cmdline_set_ = nullptr 
)
pure virtual

Initialize the model.

Implemented in b2000::b2dbv3::Model.

◆ run()

void b2000::Model::run ( )
virtual

Run the model: Call the solve method of the Solver object.

◆ set_case()

virtual void b2000::Model::set_case ( Case case_)
pure virtual

Set the case of the model.

Apply this method to all of the defined objects (domain, boundary condition, etc) of the models. The subcase ID is set to the ID of the first subcase or to 0 if no subcases are defined for this case.

Implemented in b2000::b2dbv3::Model.

◆ set_subcase_id()

virtual void b2000::Model::set_subcase_id ( const int  subcase_id_)
pure virtual

Set the analysis subcase.

Implemented in b2000::b2dbv3::Model.


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