37 #ifndef BCInterfaceFunctionUserDefined_H 38 #define BCInterfaceFunctionUserDefined_H 1
41 #include <lifev/bc_interface/core/function/BCInterfaceFunction.hpp> 62 template<
typename BcHandlerType,
typename PhysicalSolverType >
232 template<
typename BcHandlerType,
typename PhysicalSolverType >
241 template<
typename BcHandlerType,
typename PhysicalSolverType >
248 #ifdef HAVE_LIFEV_DEBUG 249 debugStream ( 5026 ) <<
"BCInterfaceFunctionUserDefined::BCInterfaceFunctionUserDefined()" <<
"\n";
257 template<
typename BcHandlerType,
typename PhysicalSolverType >
262 std::map< std::string, userDefinedFunctions > mapFunction;
263 mapFunction[
"Sin"] = Sin;
266 M_functionType = mapFunction[ data->baseString() ];
272 template<
typename BcHandlerType,
typename PhysicalSolverType >
280 return std::bind ( &BCInterfaceFunctionUserDefined< BcHandlerType, PhysicalSolverType >::functionSin,
this, std::placeholders::_1, std::placeholders::_1, std::placeholders::_1, std::placeholders::_1, std::placeholders::_1 );
284 std::cout <<
" !!! Warning: user defined function " << M_functionType <<
" not assigned !!!" << std::endl;
290 template<
typename BcHandlerType,
typename PhysicalSolverType >
298 return std::bind ( &BCInterfaceFunctionUserDefined< BcHandlerType, PhysicalSolverType >::functionSin,
this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_1, std::placeholders::_1, std::placeholders::_1 );
302 std::cout <<
" !!! Warning: user defined function " << M_functionType <<
" not assigned !!!" << std::endl;
308 template<
typename BcHandlerType,
typename PhysicalSolverType >
316 return std::bind ( &BCInterfaceFunctionUserDefined< BcHandlerType, PhysicalSolverType >::functionSin,
this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3, std::placeholders::_4, std::placeholders::_5 );
320 std::cout <<
" !!! Warning: user defined function " << M_functionType <<
" not assigned !!!" << std::endl;
326 template<
typename BcHandlerType,
typename PhysicalSolverType >
parametersContainer_Type M_parameters
PhysicalSolverType physicalSolver_Type
BCInterfaceData - The BCInterface data container.
BCInterfaceFunctionUserDefined(const BCInterfaceFunctionUserDefined &function)
function_Type::bcBase_Type bcBase_Type
boundaryFunctionTimeTimeStep_Type functionSelectorTimeTimeStep()
Get the selected function of time and time step.
function_Type::boundaryFunctionTimeTimeStep_Type boundaryFunctionTimeTimeStep_Type
Real functionSin(const Real &t, const Real &, const Real &, const Real &, const ID &)
Sinusoidal function.
void assignFunction(bcBase_Type &base)
Assign the function to the base of the BCHandler.
void updateInverseJacobian(const UInt &iQuadPt)
Real functionTimeSpace(const Real &t, const Real &x, const Real &y, const Real &z, const ID &)
Function of time and space.
boundaryFunctionTime_Type functionSelectorTime()
Get the selected function of time.
BcHandlerType bcHandler_Type
BCInterfaceFunctionUserDefined()
Real functionTimeTimeStep(const Real &t, const Real &timeStep)
Function of time and time step.
std::vector< Real > parametersContainer_Type
virtual ~BCInterfaceFunctionUserDefined()
boundaryFunctionTimeSpaceID_Type functionSelectorTimeSpaceID()
Get the selected function of time and space with ID.
function_Type::boundaryFunctionTimeSpaceID_Type boundaryFunctionTimeSpaceID_Type
Real functionTime(const Real &t)
Function of time.
double Real
Generic real data.
userDefinedFunctions M_functionType
BCInterfaceFunctionUserDefined< BcHandlerType, PhysicalSolverType > * createBCInterfaceFunctionUserDefined()
Factory create function.
function_Type::data_Type data_Type
Real functionTimeSpaceID(const Real &t, const Real &x, const Real &y, const Real &z, const ID &id)
Function of time and space with ID.
BCInterfaceFunction< bcHandler_Type, physicalSolver_Type > function_Type
void setData(const dataPtr_Type &data)
Set data for boundary conditions.
BCInterfaceFunctionUserDefined - User defined functions for BCInterface.
BCInterfaceFunctionUserDefined & operator=(const BCInterfaceFunctionUserDefined &function)
BCInterfaceFunction - Base class for BCInterface boundary functions.
function_Type::dataPtr_Type dataPtr_Type
function_Type::boundaryFunctionTime_Type boundaryFunctionTime_Type