43 #ifndef ONED_FUNCTIONS_1D_H 44 #define ONED_FUNCTIONS_1D_H 46 #include <lifev/one_d_fsi/function/OneDFSIFunction.hpp> 93 explicit Sin (
const Real mean = 0,
const Real scale = 10,
const Real period = .01,
const Real phase = 0. ) :
112 std::cout << time <<
" Flux BC = " << M_mean + M_scale* std::sin (M_phase + 2 *
M_PI * time / M_period) << std::endl;
155 const Real amplitude_cos = 10,
const Real frequency_cos = 8.*atan (1.),
156 const Real phase_cos = 0.,
157 const Real coeff_exp_t_sin = 0,
const Real mean_sin = 0,
158 const Real amplitude_sin = 10,
const Real frequency_sin = 8.*atan (1.),
159 const Real phase_sin = 0. ) :
279 Real const& kappa_Re,
Real const& kappa_Im,
280 Real const& omega ) :
282 0.
, 0.
, sol_amplitude_Im
, omega
, 0.
),
357 double flux[101] = { 0.55457447187998,
460 double timescale =
M_scale / numData;
471 int ipos = time / timescale;
472 double t2 = timescale * (ipos + 1);
474 double a = (flux[ipos + 1] - flux[ipos]) / timescale;
475 double b = flux[ipos + 1] - a * t2;
477 std::cout <<
"BC: Flux = " << time* a + b
478 <<
" period = " << M_scale <<
" pos = " << ipos << std::endl;
490 const Real& duration = 0.7,
491 const Real& endvalue = 106400 );
505 const Real& duration,
506 const Real& endvalue ) :
518 Real pressure[81] = { 110170,
619 Int ipos = t / timescale;
620 Real t2 = timescale * (ipos + 1);
622 Real a = ( pressure[ipos + 1] - pressure[ipos] ) / timescale;
623 Real b = pressure[ipos + 1] - a * t2;
627 std::cout <<
"BC: Pressure = " << P
628 <<
" period = " << M_duration <<
" pos = " << ipos << std::endl;
631 #ifdef HAVE_LIFEV_DEBUG 632 debugStream ( 6030 ) <<
"[PressureRamp::evaluate] imposed pressure = " << P <<
"\n";
virtual ~PhysiologicalFlux()
Cos_min_Sin(const Real coeff_exp_t_cos=0, const Real mean_cos=0, const Real amplitude_cos=10, const Real frequency_cos=8.*atan(1.), const Real phase_cos=0., const Real coeff_exp_t_sin=0, const Real mean_sin=0, const Real amplitude_sin=10, const Real frequency_sin=8.*atan(1.), const Real phase_sin=0.)
The constructor.
Real operator()(const Real &)
Sin(const Real mean=0, const Real scale=10, const Real period=.01, const Real phase=0.)
The constructor.
Real operator()(const Real &time)
Real operator()(const Real &time)
Compute the wave at the specified time.
PressureRamp(const Real &startT=.001, const Real &duration=0.7, const Real &endvalue=106400)
int32_type Int
Generic integer data.
void updateInverseJacobian(const UInt &iQuadPt)
Real operator()(const Real &time)
Compute the wave at the specified time.
Analytical_Solution - A particular case of Cos_min_Sin.
Real operator()(const Real &time)
Compute the sinus at the specified time.
Analytical_Solution(Real const &sol_amplitude_Re, Real const &sol_amplitude_Im, Real const &kappa_Re, Real const &kappa_Im, Real const &omega)
The constructor.
PhysiologicalFlux - Base class for One Dimensional BC Functions.
Constant(const Real &value)
double Real
Generic real data.
Const - Base class for One Dimensional BC Functions.
virtual ~Analytical_Solution()
Cos_min_Sin - A superimposition of a sinusoidal and a cosinusoidal waves, whose amplitude is damped b...
void update_x(const Real &_x)
Compute the wave at the specified time.
Real operator()(const Real &time)