39 #ifndef _DATADARCY_HPP_ 40 #define _DATADARCY_HPP_ 1
43 #include <Teuchos_XMLParameterListHelpers.hpp> 44 #include <Teuchos_RCP.hpp> 47 #include <lifev/core/mesh/MeshData.hpp> 49 #include <lifev/core/fem/TimeData.hpp> 50 #include <lifev/core/fem/TimeAdvanceData.hpp> 60 template <
typename MeshType >
122 const std::string& section =
"darcy" );
134 const std::string& section =
"darcy" );
149 const std::string& linearSolver =
"Linear Solver",
150 const std::string& precond =
"Preconditioner" )
153 M_linearSolverSection = linearSolver;
154 M_precondSection = precond;
269 ASSERT ( M_linearAlgebraList.get(),
"Parameter list not set." );
270 return M_linearAlgebraList->sublist ( M_linearSolverSection );
279 ASSERT ( M_linearAlgebraList.get(),
"Parameter list not set." );
280 return M_linearAlgebraList->sublist ( M_precondSection );
339 template <
typename MeshType >
342 setup (
const data_Type& dataFile,
const std::string& section )
349 M_data.reset (
new data_Type ( dataFile ) );
355 M_time.reset (
new timeData_Type ( dataFile, M_section +
"/time_discretization" ) );
359 if ( !M_timeAdvance.get() )
361 M_timeAdvance.reset (
new timeAdvanceData_Type ( dataFile, M_section +
"/time_discretization" ) );
367 M_mesh.reset (
new meshData_Type ( dataFile, M_section +
"/space_discretization" ) );
371 M_verbose = dataFile ( ( M_section +
"/miscellaneous/verbose" ).data(), 1 );
std::string section() const
Get the main section of the data file.
timeAdvanceDataPtr_Type & dataTimeAdvancePtr()
Get data time advance container.
TimeData timeData_Type
Typedef for the time data.
std::shared_ptr< meshData_Type > meshDataPtr_Type
Shared pointer for the mesh data.
UInt verbose() const
Get the level of verbosity of the problem.
dataPtr_Type M_data
Inhibited assign operator.
std::string M_precondSection
Section in the parameter list for preconditioner.
DarcyData()
Empty Constructor.
void setTimeData(const timeDataPtr_Type &timeData)
Set data time container.
meshDataPtr_Type M_mesh
Data container for mesh.
std::shared_ptr< data_Type > dataPtr_Type
Shared pointer for the data.
const dataPtr_Type & dataFilePtr() const
Get the data file of the problem.
std::string M_section
Section in GetPot file.
const paramList_Type & linearSolverList() const
Get Teuchos parameter list for the linear solver.
UInt M_verbose
Output verbose.
dataPtr_Type & dataFilePtr()
Get the data file of the problem.
void setMeshData(const meshDataPtr_Type &meshData)
Set mesh container.
const paramList_Type & preconditionerList() const
Get Teuchos parameter list for the preconditioner.
timeAdvanceDataPtr_Type M_timeAdvance
Data container for time advance.
DarcyData< mesh_Type > darcyData_Type
Self typedef.
MeshData - class for handling spatial discretization.
timeDataPtr_Type & dataTimePtr()
Get data time container.
paramListPtr_Type M_linearAlgebraList
Teuchos paramter list for linear algebra.
darcyData_Type & operator=(const darcyData_Type &)
Inhibited assign operator.
meshDataPtr_Type & meshDataPtr()
Get mesh container.
std::shared_ptr< timeData_Type > timeDataPtr_Type
Shared pointer for the time data.
const meshDataPtr_Type & meshDataPtr() const
Get mesh container.
std::shared_ptr< timeAdvanceData_Type > timeAdvanceDataPtr_Type
Shared pointer for the time advance data.
Teuchos::RCP< paramList_Type > paramListPtr_Type
Shared pointer for the Teuchos parameter list.
std::string M_linearSolverSection
Section in the parameter list for linear solver.
DarcyData(const darcyData_Type &)
Inhibited copy constructor.
contain the basic data for the Darcy solver.
TimeAdvanceData timeAdvanceData_Type
Typedef for the time advance data.
MeshData meshData_Type
Typedef for the mesh data.
MeshType mesh_Type
Typedef for the mesh template.
const timeDataPtr_Type & dataTimePtr() const
Get data time container.
uint32_type UInt
generic unsigned integer (used mainly for addressing)
const timeAdvanceDataPtr_Type & dataTimeAdvancePtr() const
Get data time advance container.
timeDataPtr_Type M_time
Data container for time.
GetPot data_Type
Typedef for the GetPot data.
Teuchos::ParameterList paramList_Type
Teuchos parameter list.