linearised_fsi_pulsewave.cc File Reference

Classes

class  PressureWaveFSIProblem< FLUID_ELEMENT, SOLID_ELEMENT >
 Problem class. More...
 

Namespaces

 Global_Physical_Variables
 Global variables.
 

Macros

#define DO_FSI
 

Functions

void Global_Physical_Variables::outside_solid_boundary_traction (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &result)
 Traction applied to the outside of the solid mesh. More...
 
void Global_Physical_Variables::fluid_inflow_boundary_traction (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &result)
 Inflow traction applied to the fluid mesh. More...
 
void Global_Physical_Variables::validation_solid_fsi_boundary_traction (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &result)
 Traction applied to the solid mesh at fsi interface (for validation only) More...
 
void Global_Physical_Variables::validation_fluid_fsi_boundary_traction (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &result)
 
void Global_Physical_Variables::pulse_wave_solution (const double &time, const Vector< double > &x, Vector< double > &soln)
 "Exact" solution for propagating pulse wave More...
 
void Global_Physical_Variables::update_dependent_parameters ()
 Helper function to update dependent parameters. More...
 
void Global_Physical_Variables::doc_dependent_parameters ()
 Doc dependent parameters. More...
 
int main (int argc, char **argv)
 

Variables

bool Global_Physical_Variables::Pin_fluid_on_fsi =false
 For validation only. More...
 
double Global_Physical_Variables::Wo = 0.0
 
double Global_Physical_Variables::Inner_radius =0.5
 Inner radius of tube. More...
 
double Global_Physical_Variables::Outer_radius =1.0
 Outer radius of tube. More...
 
double Global_Physical_Variables::P_inlet_const =Length*4.0/(Inner_radius*Inner_radius)
 Constant inlet pressure (for steady Poiseuille flow) More...
 
double Global_Physical_Variables::T_cos =0.0
 
double Global_Physical_Variables::P_outside_scale =0.0
 
double Global_Physical_Variables::P_wall =1.0
 Constant wall pressure for validation. More...
 
double Global_Physical_Variables::Tau =2.0/Inner_radius
 Shear stress (for steady Poiseuille flow) More...
 
double Global_Physical_Variables::Wavespeed =0.0
 Storage for Moens Korteweg wavespeed – dependent parameter! More...
 
double Global_Physical_Variables::Pressure_wavespeed =0.0
 Storage for pressure wavespeed in solid – dependent parameter! More...
 

Macro Definition Documentation

◆ DO_FSI

#define DO_FSI

Function Documentation

◆ main()

int main ( int argc  ,
char **  argv 
)
991 {
992 
993  // Store command line arguments
994  CommandLineArgs::setup(argc,argv);
995 
996  // Define possible command line arguments and parse the ones that
997  // were actually specified
998 
999  // Validation run?
1001 
1002  // Parse command line
1004 
1005  // Doc what has actually been specified on the command line
1007 
1008  // Create doc info object
1009  DocInfo doc_info;
1010  doc_info.set_directory("RESLT");
1011 
1012  // Create problem
1015 
1016 
1017  // Update dependent problem parameters
1019 
1020  // Doc dependent parameters
1022 
1023  // Setup timestep based on Moens Korteweg velocity
1024  //------------------------------------------------
1025 
1026  // Desired number of timesteps for pressure wave to propagate
1027  // along tube
1028  unsigned nt=100;
1029 
1030  // Choose timestep
1034  oomph_info << "Timestep: " << dt << std::endl;
1035 
1036  // // Choose ramp-up over 30 timesteps
1037  // unsigned nramp=30;
1038  // Global_Physical_Variables::T_cos=double(nramp)*dt;
1039 
1040  //Set an impulsive start from rest
1041  problem.assign_initial_values_impulsive(dt);
1042 
1043  // Output initial condition
1044  problem.doc_solution(doc_info);
1045 
1046  // Do timestepping loop
1047  unsigned nstep=500;
1049  {
1050  nstep=3;
1051  }
1052  for(unsigned n=0;n<nstep;n++)
1053  {
1054  //Solve the problem
1055  problem.unsteady_newton_solve(dt);
1056 
1057  // Output
1058  problem.doc_solution(doc_info);
1059 
1061  {
1063  oomph_info << "incrementing P_inlet_const to "
1065  }
1066 
1067  }
1068 
1069 }
const unsigned n
Definition: CG3DPackingUnitTest.cpp:11
Problem class.
Definition: linearised_fsi_pulsewave.cc:251
Definition: Taxisym_navier_stokes_elements.h:575
Definition: oomph_utilities.h:499
void set_directory(const std::string &directory)
Definition: oomph_utilities.cc:298
Definition: Taxisym_linear_elasticity_elements.h:66
void setup(Time *time_pt)
Create all GeomObjects needed to define the cylinder and the flag.
Definition: turek_flag_non_fsi.cc:277
double St
Strouhal number.
Definition: elastic_two_layer_interface_axisym.cc:66
bool Pin_fluid_on_fsi
For validation only.
Definition: linearised_fsi_pulsewave.cc:47
void doc_dependent_parameters()
Doc dependent parameters.
Definition: linearised_fsi_pulsewave.cc:225
double Length
Length of the pipe.
Definition: pipe.cc:52
double P_inlet_const
Constant inlet pressure (for steady Poiseuille flow)
Definition: linearised_fsi_pulsewave.cc:81
void update_dependent_parameters()
Helper function to update dependent parameters.
Definition: linearised_fsi_pulsewave.cc:192
double Wavespeed
Storage for Moens Korteweg wavespeed – dependent parameter!
Definition: linearised_fsi_pulsewave.cc:163
bool command_line_flag_has_been_set(const std::string &flag)
Definition: oomph_utilities.cc:501
void specify_command_line_flag(const std::string &command_line_flag, const std::string &doc)
Specify possible argument-free command line flag.
Definition: oomph_utilities.cc:451
void parse_and_assign(int argc, char *argv[], const bool &throw_on_unrecognised_args)
Definition: oomph_utilities.cc:760
void doc_specified_flags()
Document specified command line flags.
Definition: oomph_utilities.cc:610
OomphInfo oomph_info
Definition: oomph_definitions.cc:319
Constructor for SteadyAxisymAdvectionDiffusion problem
Definition: steady_axisym_advection_diffusion.cc:213

References oomph::CommandLineArgs::command_line_flag_has_been_set(), Global_Physical_Variables::doc_dependent_parameters(), oomph::CommandLineArgs::doc_specified_flags(), Global_Physical_Variables::Length, n, oomph::oomph_info, Global_Physical_Variables::P_inlet_const, oomph::CommandLineArgs::parse_and_assign(), Global_Physical_Variables::Pin_fluid_on_fsi, problem, oomph::DocInfo::set_directory(), Flag_definition::setup(), oomph::CommandLineArgs::specify_command_line_flag(), Global_Physical_Variables::St, Global_Physical_Variables::update_dependent_parameters(), and Global_Physical_Variables::Wavespeed.