disk_compression.cc File Reference
#include <iostream>
#include <fstream>
#include <cmath>
#include "generic.h"
#include "solid.h"
#include "meshes/quarter_circle_sector_mesh.h"

Classes

class  ElasticRefineableQuarterCircleSectorMesh< ELEMENT >
 
class  StaticDiskCompressionProblem< ELEMENT >
 

Namespaces

 Global_Physical_Variables
 Global variables.
 

Functions

void Global_Physical_Variables::constant_pressure (const Vector< double > &xi, const Vector< double > &x, const Vector< double > &n, Vector< double > &traction)
 Constant pressure load. More...
 
void Global_Physical_Variables::growth_function (const Vector< double > &xi, double &gamma)
 Growth function. More...
 
int main (int argc, char *argv[])
 Driver code for disk-compression. More...
 

Variables

double Global_Physical_Variables::Uniform_gamma =1.1
 Uniform volumetric expansion. More...
 

Function Documentation

◆ main()

int main ( int argc  ,
char argv[] 
)

Driver code for disk-compression.

412 {
413 
414  // Store command line arguments
415  CommandLineArgs::setup(argc,argv);
416 
417  // Define a strain energy function: Generalised Mooney Rivlin
422 
423  // Define a constitutive law (based on strain energy function)
427 
428  // Case 0: No pressure, generalised Mooney Rivlin
429  //-----------------------------------------------
430  {
431  //Set up the problem
433 
434  cout << "gen. M.R.: RefineableQPVDElement<2,3>" << std::endl;
435 
436  //Run the simulation
437  problem.parameter_study(0);
438 
439  } // done case 0
440 
441 
442  // Case 1: Continuous pressure formulation with generalised Mooney Rivlin
443  //------------------------------------------------------------------------
444  {
445  //Set up the problem
448 
449  cout << "gen. M.R.: RefineableQPVDElementWithContinuousPressure<2> "
450  << std::endl;
451 
452  //Run the simulation
453  problem.parameter_study(1);
454 
455  } // done case 1
456 
457 
458 
459  // Case 2: Discontinuous pressure formulation with generalised Mooney Rivlin
460  //--------------------------------------------------------------------------
461  {
462  //Set up the problem
464  problem;
465 
466  cout << "gen. M.R.: RefineableQPVDElementWithPressure<2>" << std::endl;
467 
468  //Run the simulation
469  problem.parameter_study(2);
470 
471  } // done case 2
472 
473 
474  // Change the consitutive law: Delete the old one
476 
477  // Create oomph-lib's generalised Hooke's law constitutive equation
481 
482  // Case 3: No pressure, generalised Hooke's law
483  //----------------------------------------------
484  {
485  //Set up the problem
487 
488  cout << "gen. Hooke: RefineableQPVDElement<2,3> " << std::endl;
489 
490  //Run the simulation
491  problem.parameter_study(3);
492 
493  } // done case 3
494 
495  // Case 4: Continuous pressure formulation with generalised Hooke's law
496  //---------------------------------------------------------------------
497  {
498 
499  //Set up the problem
502 
503  cout << "gen. Hooke: RefineableQPVDElementWithContinuousPressure<2> "
504  << std::endl;
505 
506  //Run the simulation
507  problem.parameter_study(4);
508 
509  } // done case 4
510 
511 
512  // Case 5: Discontinous pressure formulation with generalised Hooke's law
513  //------------------------------------------------------------------------
514  {
515 
516  //Set up the problem
518 
519  cout << "gen. Hooke: RefineableQPVDElementWithPressure<2> " << std::endl;
520 
521  //Run the simulation
522  problem.parameter_study(5);
523 
524  } // done case 5
525 
526  // Clean up
529 
530 } // end of main
Definition: disk_compression.cc:171
Definition: constitutive_laws.h:699
Definition: constitutive_laws.h:215
Definition: constitutive_laws.h:801
Definition: refineable_solid_elements.h:826
void setup(Time *time_pt)
Create all GeomObjects needed to define the cylinder and the flag.
Definition: turek_flag_non_fsi.cc:277
double E
Elastic modulus.
Definition: TwenteMeshGluing.cpp:68
double Nu
Poisson's ratio.
Definition: TwenteMeshGluing.cpp:71
ConstitutiveLaw * Constitutive_law_pt
Pointer to constitutive law.
Definition: TwenteMeshGluing.cpp:65
double C1
"Mooney Rivlin" coefficient for generalised Mooney Rivlin law
Definition: TwenteMeshGluing.cpp:74
StrainEnergyFunction * Strain_energy_function_pt
Pointer to strain energy function.
Definition: TwenteMeshGluing.cpp:62
Constructor for SteadyAxisymAdvectionDiffusion problem
Definition: steady_axisym_advection_diffusion.cc:213

References Global_Physical_Variables::C1, Global_Physical_Variables::Constitutive_law_pt, Global_Physical_Variables::E, Global_Physical_Variables::Nu, problem, Flag_definition::setup(), and Global_Physical_Variables::Strain_energy_function_pt.