www.mooseframework.org
Classes | Namespaces | Functions
SystemBase.h File Reference

Go to the source code of this file.

Classes

struct  VarCopyInfo
 Information about variables that will be copied. More...
 
class  SystemBase
 Base class for a system (of equations) More...
 

Namespaces

 libMesh
 The following methods are specializations for using the libMesh::Parallel::packed_range_* routines for std::strings.
 

Functions

void extraSendList (std::vector< dof_id_type > &send_list, void *context)
 ///< Type of coordinate system More...
 
void extraSparsity (SparsityPattern::Graph &sparsity, std::vector< dof_id_type > &n_nz, std::vector< dof_id_type > &n_oz, void *context)
 Free function used for a libMesh callback. More...
 
template<>
void dataStore (std::ostream &stream, SystemBase &system_base, void *context)
 IO Methods for restart, backup and restore. More...
 
template<>
void dataLoad (std::istream &stream, SystemBase &system_base, void *context)
 IO Methods for restart, backup and restore. More...
 

Function Documentation

template<>
void dataLoad ( std::istream &  stream,
SystemBase system_base,
void *  context 
)

IO Methods for restart, backup and restore.

Definition at line 68 of file SystemBase.C.

69 {
70  System & libmesh_system = system_base.system();
71 
72  NumericVector<Real> & solution = *(libmesh_system.solution.get());
73 
74  dataLoad(stream, solution, context);
75 
76  for (System::vectors_iterator it = libmesh_system.vectors_begin();
77  it != libmesh_system.vectors_end();
78  it++)
79  dataLoad(stream, *(it->second), context);
80 
81  system_base.update();
82 }
virtual void update()
Update the system (doing libMesh magic)
Definition: SystemBase.C:665
virtual System & system()=0
Get the reference to the libMesh system.
void dataLoad(std::istream &stream, SystemBase &system_base, void *context)
IO Methods for restart, backup and restore.
Definition: SystemBase.C:68
template<>
void dataStore ( std::ostream &  stream,
SystemBase system_base,
void *  context 
)

IO Methods for restart, backup and restore.

Definition at line 52 of file SystemBase.C.

53 {
54  System & libmesh_system = system_base.system();
55 
56  NumericVector<Real> & solution = *(libmesh_system.solution.get());
57 
58  dataStore(stream, solution, context);
59 
60  for (System::vectors_iterator it = libmesh_system.vectors_begin();
61  it != libmesh_system.vectors_end();
62  it++)
63  dataStore(stream, *(it->second), context);
64 }
void dataStore(std::ostream &stream, SystemBase &system_base, void *context)
IO Methods for restart, backup and restore.
Definition: SystemBase.C:52
virtual System & system()=0
Get the reference to the libMesh system.
void extraSendList ( std::vector< dof_id_type > &  send_list,
void *  context 
)

///< Type of coordinate system

///< Type of coordinate system

Definition at line 33 of file SystemBase.C.

Referenced by DisplacedProblem::init(), and FEProblemBase::init().

34 {
35  SystemBase * sys = static_cast<SystemBase *>(context);
36  sys->augmentSendList(send_list);
37 }
Base class for a system (of equations)
Definition: SystemBase.h:91
virtual void augmentSendList(std::vector< dof_id_type > &send_list)
Will modify the send_list to add all of the extra ghosted dofs for this system.
Definition: SystemBase.C:401
void extraSparsity ( SparsityPattern::Graph &  sparsity,
std::vector< dof_id_type > &  n_nz,
std::vector< dof_id_type > &  n_oz,
void *  context 
)

Free function used for a libMesh callback.

Definition at line 41 of file SystemBase.C.

Referenced by FEProblemBase::init().

45 {
46  SystemBase * sys = static_cast<SystemBase *>(context);
47  sys->augmentSparsity(sparsity, n_nz, n_oz);
48 }
Base class for a system (of equations)
Definition: SystemBase.h:91
const std::vector< numeric_index_type > & n_nz
virtual void augmentSparsity(SparsityPattern::Graph &sparsity, std::vector< dof_id_type > &n_nz, std::vector< dof_id_type > &n_oz)=0
Will modify the sparsity pattern to add logical geometric connections.
const std::vector< numeric_index_type > & n_oz