Demonstrate how to solve an unstructured solid problem.
477 unsigned max_adapt=2;
487 std::ofstream strain(
"RESLT/s_energy.dat");
491 std::cout <<
"Running with pure displacement formulation\n";
504 double pressure_increment=0.1e-2;
506 for (
unsigned istep=0;istep<nstep;istep++)
509 problem.newton_solve(max_adapt);
511 double strain_energy =
problem.get_strain_energy();
512 std::cout <<
"Strain energy is " << strain_energy <<
"\n";
523 pressure_increment*=-1.0;
535 std::cout <<
"Running with pressure/displacement formulation\n";
548 double pressure_increment=0.1e-2;
551 for (
unsigned istep=0;istep<nstep;istep++)
554 problem.newton_solve(max_adapt);
556 double strain_energy =
problem.get_strain_energy();
557 std::cout <<
"Strain energy is "<< strain_energy <<
"\n";
568 pressure_increment *= -1.0;
580 std::cout <<
"Running with pressure/displacement "
581 <<
"formulation (incompressible) " << std::endl;
591 const unsigned n_element =
problem.mesh_pt()->nelement();
592 for(
unsigned e=0;
e<n_element;
e++)
617 double pressure_increment=0.1e-2;
619 for (
unsigned istep=0;istep<nstep;istep++)
622 problem.newton_solve(max_adapt);
624 double strain_energy=
problem.get_strain_energy();
625 std::cout <<
"Strain energy is " << strain_energy <<
"\n";
636 pressure_increment *= -1.0;
Array< double, 1, 3 > e(1./3., 0.5, 2.)
Triangle-based mesh upgraded to become a solid mesh.
Definition: adaptive_unstructured_two_d_solid.cc:54
Unstructured solid problem.
Definition: adaptive_unstructured_two_d_solid.cc:117
Definition: constitutive_laws.h:699
Definition: solid_elements.h:863
void set_incompressible()
Set the material to be incompressible.
Definition: solid_elements.h:881
Definition: refineable_solid_elements.h:826
Class for refineable QPVDElement elements.
Definition: refineable_solid_elements.h:181
void setup(Time *time_pt)
Create all GeomObjects needed to define the cylinder and the flag.
Definition: turek_flag_non_fsi.cc:277
double P
Uniform pressure.
Definition: TwenteMeshGluing.cpp:77
double Nu
Poisson's ratio.
Definition: TwenteMeshGluing.cpp:71
ConstitutiveLaw * Constitutive_law_pt
Pointer to constitutive law.
Definition: TwenteMeshGluing.cpp:65
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