43 #define PI 3.14159265359
62 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
87 return 0.088002 * ( x + 0.5 );
90 return - ( 0.02068 * 2.0 ) * ( y );
93 return - ( 0.02068 * 2.0 ) * ( z );
96 ERROR_MSG (
"This entry is not allowed: ud_functions.hpp");
118 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
139 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
193 Real radius = std::sqrt( x*x + y*y);
196 Real highestPressure(200000);
197 Real totalTime = 4.5;
198 Real halfTime = totalTime / 2.0;
200 Real a = ( highestPressure / 2 ) * ( 1/ ( halfTime*halfTime ) );
206 pressure = - a * (t - totalTime)*(t - totalTime) + highestPressure;
211 return pressure * ( x / radius ) ;
214 return pressure * ( y / radius ) ;
249 return std::sin( theta );
255 return std::cos( theta );
264 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
272 Real theta = ( -
PI / 6.0 );
287 return std::sin( theta );
293 return std::cos( theta );
302 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
323 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
345 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
367 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
388 ERROR_MSG (
"This entrie is not allowed: ud_functions.hpp");
395 fibersDirectionList::fibersDirectionList() :
396 M_mapNameDefinition( )
399 fibersDirectionList::~fibersDirectionList()
402 void fibersDirectionList::setupFiberDefinitions(
const UInt nbFamilies )
408 ASSERT( nbFamilies < 6,
"At the moment, a maximum number = 6 of families can be used! If you want more \n modifiy the file ud_functions.hpp in the application folder." );
411 fiberFunctionPtr_Type pointerToFunction(
new fiberFunction_Type( Family1 ) );
412 M_mapNameDefinition.insert( std::pair<std::string, fiberFunctionPtr_Type>
413 (
"Family1", pointerToFunction ) );
415 pointerToFunction.reset(
new fiberFunction_Type( Family2 ) );
416 M_mapNameDefinition.insert( std::pair<std::string, fiberFunctionPtr_Type>
417 (
"Family2", pointerToFunction ) );
419 pointerToFunction.reset(
new fiberFunction_Type( Family3 ) );
420 M_mapNameDefinition.insert( std::pair<std::string, fiberFunctionPtr_Type>
421 (
"Family3", pointerToFunction ) );
423 pointerToFunction.reset(
new fiberFunction_Type( Family4 ) );
424 M_mapNameDefinition.insert( std::pair<std::string, fiberFunctionPtr_Type>
425 (
"Family4", pointerToFunction ) );
427 pointerToFunction.reset(
new fiberFunction_Type( Family5 ) );
428 M_mapNameDefinition.insert( std::pair<std::string, fiberFunctionPtr_Type>
429 (
"Family5", pointerToFunction ) );
431 pointerToFunction.reset(
new fiberFunction_Type( Family6 ) );
432 M_mapNameDefinition.insert( std::pair<std::string, fiberFunctionPtr_Type>
433 (
"Family6", pointerToFunction ) );
438 fibersDirectionList::fiberFunctionPtr_Type fibersDirectionList::fiberDefinition(
const std::string nameFamily )
441 mapNameDefinitionFiberFunction_Type::const_iterator IT;
443 IT = M_mapNameDefinition.find ( nameFamily );
445 if ( IT != M_mapNameDefinition.end() )
451 std::cout <<
" Wrong identification of the fiber function! " << std::endl;
452 fiberFunctionPtr_Type pointerToFunction(
new fiberFunction_Type() );
454 return pointerToFunction;
Real d0(const Real &t, const Real &x, const Real &y, const Real &z, const ID &i)
void updateInverseJacobian(const UInt &iQuadPt)
Real w0(const Real &t, const Real &x, const Real &y, const Real &z, const ID &i)
Real f(const Real &t, const Real &x, const Real &y, const Real &z, const ID &i)
double Real
Generic real data.
uint32_type UInt
generic unsigned integer (used mainly for addressing)