24 #ifndef GRINS_IC_HANDLING_BASE_H 
   25 #define GRINS_IC_HANDLING_BASE_H 
   33 #include "libmesh/libmesh.h" 
   34 #include "libmesh/getpot.h" 
   35 #include "libmesh/point.h" 
   36 #include "libmesh/function_base.h" 
   41   template <
typename Scalar>
 
   60     virtual void read_ic_data( 
const GetPot& input, 
const std::string& id_str,
 
   61                                const std::string& ic_str,
 
   62                                const std::string& var_str,
 
   63                                const std::string& value_str );
 
   68     virtual void init_ic_data( 
const libMesh::FEMSystem& system,
 
   72     virtual int string_to_int( 
const std::string& bc_type_in ) 
const;
 
   74     virtual void init_ic_types( 
const libMesh::subdomain_id_type ic_id, 
 
   75                                 const std::string& ic_id_string, 
 
   77                                 const std::string& ic_vars_string, 
 
   78                                 const std::string& ic_value_string, 
 
   79                                 const GetPot& input );
 
   81     libMesh::FunctionBase<libMesh::Number>* 
get_ic_func() 
const;
 
   85     libMesh::UniquePtr<libMesh::FunctionBase<libMesh::Number> > 
_ic_func;
 
   97   libMesh::FunctionBase<libMesh::Number>*
 
  103 #endif // GRINS_BC_HANDLING_BASE 
void attach_initial_func(const libMesh::FunctionBase< libMesh::Number > &initial_val)
 
virtual ~ICHandlingBase()
 
libMesh::FunctionBase< libMesh::Number > * get_ic_func() const 
 
virtual void init_ic_types(const libMesh::subdomain_id_type ic_id, const std::string &ic_id_string, const int ic_type, const std::string &ic_vars_string, const std::string &ic_value_string, const GetPot &input)
 
std::string _physics_name
 
ICHandlingBase(const std::string &physics_name)
 
virtual void read_ic_data(const GetPot &input, const std::string &id_str, const std::string &ic_str, const std::string &var_str, const std::string &value_str)
 
virtual int string_to_int(const std::string &bc_type_in) const 
 
Base class for reading and handling initial conditions for physics classes. 
 
std::vector< std::string > _subfunction_variables
 
virtual void init_ic_data(const libMesh::FEMSystem &system, libMesh::CompositeFunction< libMesh::Number > &all_ics)
Override this method to initialize any system-dependent data. 
 
libMesh::UniquePtr< libMesh::FunctionBase< libMesh::Number > > _ic_func