unstructured_fourier_decomposed_acoustic_fsi.cc File Reference
#include <complex>
#include <cmath>
#include "generic.h"
#include "fourier_decomposed_helmholtz.h"
#include "time_harmonic_fourier_decomposed_linear_elasticity.h"
#include "multi_physics.h"
#include "meshes/annular_mesh.h"
#include "meshes/triangle_mesh.h"
#include "oomph_crbond_bessel.h"

Classes

class  MyStraightLine
 Straight 1D line in 2D space. More...
 
class  CoatedSphereProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >
 Coated sphere FSI. More...
 

Namespaces

 Global_Parameters
 Namespace for global parameters.
 

Functions

std::complex< doubleGlobal_Parameters::Nu (std::complex< double >(0.3, 0.0))
 Poisson's ratio Nu. More...
 
Vector< std::complex< double > > Global_Parameters::E (2, std::complex< double >(1.0, 0.0))
 Define the non-dimensional Young's modulus. More...
 
Vector< std::complex< double > > Global_Parameters::Omega_sq (2, std::complex< double >(100.0, 0.0))
 Non-dim square of frequency for solid – dependent variable! More...
 
Vector< doubleGlobal_Parameters::Density_ratio (2, 1.0)
 Density ratio: solid to fluid. More...
 
void Global_Parameters::update_parameter_values ()
 Function to update dependent parameter values. More...
 
void Global_Parameters::pressure_load (const Vector< double > &x, const Vector< double > &n, Vector< std::complex< double > > &traction)
 Pressure load (real and imag part) More...
 
int main (int argc, char **argv)
 Driver for coated sphere loaded by lineared fluid loading. More...
 

Function Documentation

◆ main()

int main ( int argc  ,
char **  argv 
)

Driver for coated sphere loaded by lineared fluid loading.

1351 {
1352 
1353  // Store command line arguments
1354  CommandLineArgs::setup(argc,argv);
1355 
1356  // Define possible command line arguments and parse the ones that
1357  // were actually specified
1358 
1359  // Output directory
1362 
1363  // Parameter controlling the sharpness of the pressure load
1366 
1367  // Parse command line
1369 
1370  // Doc what has actually been specified on the command line
1372 
1373 
1374 
1375  // Set values for parameter values
1376  Global_Parameters::Q=5.0;
1380 
1381  // Update dependent parameters values
1383 
1384  // Set up doc info
1385  DocInfo doc_info;
1386 
1387  // Set output directory
1389 
1390 #ifdef ADAPTIVE
1391 
1392  // Set up the problem
1398 
1399 #else
1400 
1401  // Set up the problem
1404 
1405 #endif
1406 
1407 
1408  //Parameter incrementation
1409  unsigned nstep=3;
1410  for(unsigned i=0;i<nstep;i++)
1411  {
1412 
1413 #ifdef ADAPTIVE
1414 
1415  // Solve the problem with Newton's method, allowing
1416  // up to max_adapt mesh adaptations after every solve.
1417  unsigned max_adapt=3;
1418  problem.newton_solve(max_adapt);
1419 
1420 #else
1421 
1422  // Solve the problem with Newton's method
1423  problem.newton_solve();
1424 
1425 #endif
1426 
1427  // Doc solution
1428  problem.doc_solution(doc_info);
1429 
1430  // Make rib a lot heavier but keep its stiffness
1431  if (i==0)
1432  {
1433  Global_Parameters::E[1]=1.0;
1436  }
1437 
1438  // Make rib very soft and inertia-less
1439  if (i==1)
1440  {
1441  Global_Parameters::E[1]=1.0e-16;
1444  }
1445  }
1446 
1447 } //end_of_main
int i
Definition: BiCGSTAB_step_by_step.cpp:9
Coated sphere FSI.
Definition: fourier_decomposed_acoustic_fsi.cc:127
Definition: oomph_utilities.h:499
void set_directory(const std::string &directory)
Definition: oomph_utilities.cc:298
Fourier decomposed Helmholtz upgraded to become projectable.
Definition: fourier_decomposed_helmholtz_elements.h:647
Definition: time_harmonic_fourier_decomposed_linear_elasticity_elements.h:653
Definition: Tfourier_decomposed_helmholtz_elements.h:65
Definition: time_harmonic_fourier_decomposed_linear_elasticity_elements.h:515
void setup(Time *time_pt)
Create all GeomObjects needed to define the cylinder and the flag.
Definition: turek_flag_non_fsi.cc:277
string Directory
Output directory.
Definition: acoustic_fsi.cc:101
double Density_ratio
Density ratio: solid to fluid.
Definition: acoustic_fsi.cc:70
double Q
FSI parameter.
Definition: acoustic_fsi.cc:58
double E
Define the non-dimensional Young's modulus.
Definition: axisym_linear_elasticity/cylinder/cylinder.cc:49
void update_parameter_values()
Function to update dependent parameter values.
Definition: acoustic_fsi.cc:76
double Alpha
Peakiness parameter for pressure load.
Definition: adaptive_hopf.cc:60
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
Constructor for SteadyAxisymAdvectionDiffusion problem
Definition: steady_axisym_advection_diffusion.cc:213

References Global_Parameters::Alpha, Global_Parameters::Density_ratio, Global_Parameters::Directory, oomph::CommandLineArgs::doc_specified_flags(), Global_Parameters::E, i, oomph::CommandLineArgs::parse_and_assign(), problem, Global_Parameters::Q, oomph::DocInfo::set_directory(), oomph::CommandLineArgs::setup(), oomph::CommandLineArgs::specify_command_line_flag(), and Global_Parameters::update_parameter_values().