Public Member Functions | Private Attributes | List of all members
DiskShockWaveProblem< ELEMENT, TIMESTEPPER > Class Template Reference

////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////// More...

Inheritance diagram for DiskShockWaveProblem< ELEMENT, TIMESTEPPER >:

Public Member Functions

 DiskShockWaveProblem ()
 Constructor: More...
 
void run (const unsigned &case_number)
 Run the problem; specify case_number to label output directory. More...
 
ElasticRefineableQuarterCircleSectorMesh< ELEMENT > *& solid_mesh_pt ()
 Access function for the solid mesh. More...
 
SolidMesh *& traction_mesh_pt ()
 Access function for the mesh of surface traction elements. More...
 
void doc_solution ()
 Doc the solution. More...
 
void actions_after_newton_solve ()
 Update function (empty) More...
 
void actions_before_newton_solve ()
 Update function (empty) More...
 
void actions_after_adapt ()
 Actions after adaption: Kill and then re-build the traction elements on boundary 1 and re-assign the equation numbers. More...
 
void doc_displ_and_veloc (const int &stage=0)
 Doc displacement and velocity: label file with before and after. More...
 
void dump_it (ofstream &dump_file)
 Dump problem-specific parameters values, then dump generic problem data. More...
 
void restart (ifstream &restart_file)
 Read problem-specific parameter values, then recover generic problem data. More...
 

Private Attributes

DocInfo Doc_info
 
ofstream Trace_file
 Trace file. More...
 
Vector< Node * > Trace_node_pt
 Vector of pointers to nodes whose position we're tracing. More...
 
ElasticRefineableQuarterCircleSectorMesh< ELEMENT > * Solid_mesh_pt
 Pointer to solid mesh. More...
 
SolidMesh * Traction_mesh_pt
 Pointer to mesh of traction elements. More...
 

Detailed Description

template<class ELEMENT, class TIMESTEPPER>
class DiskShockWaveProblem< ELEMENT, TIMESTEPPER >

////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////

"Shock" wave propagates through an impulsively loaded circular disk.

Definition at line 207 of file shock_disk.cc.

Constructor & Destructor Documentation

◆ DiskShockWaveProblem()

template<class ELEMENT , class TIMESTEPPER >
DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::DiskShockWaveProblem

Constructor:

Constructor.

Definition at line 282 of file shock_disk.cc.

References Global_Physical_Variables::constant_pressure(), and Global_Physical_Variables::Constitutive_law_pt.

Member Function Documentation

◆ actions_after_adapt()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::actions_after_adapt

Actions after adaption: Kill and then re-build the traction elements on boundary 1 and re-assign the equation numbers.

Kill and then re-build the traction elements on boundary 1, pin redundant pressure dofs and re-assign the equation numbers.

Definition at line 436 of file shock_disk.cc.

References Global_Physical_Variables::constant_pressure().

◆ actions_after_newton_solve()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::actions_after_newton_solve ( )
inline

Update function (empty)

Definition at line 235 of file shock_disk.cc.

◆ actions_before_newton_solve()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::actions_before_newton_solve ( )
inline

Update function (empty)

Definition at line 238 of file shock_disk.cc.

◆ doc_displ_and_veloc()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::doc_displ_and_veloc ( const int &  stage = 0)

Doc displacement and velocity: label file with before and after.

Doc displacement and veloc in displ_and_veloc*.dat. The int stage defaults to 0, in which case the '*' in the filename is simply the step number specified by the Problem's DocInfo object. If it's +/-1, the word "before" and "after" get inserted. This allows checking of the veloc/displacment interpolation during adaptive mesh refinement.

Definition at line 613 of file shock_disk.cc.

◆ doc_solution()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::doc_solution

Doc the solution.

Definition at line 474 of file shock_disk.cc.

◆ dump_it()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::dump_it ( ofstream &  dump_file)

Dump problem-specific parameters values, then dump generic problem data.

Dump the solution.

Definition at line 690 of file shock_disk.cc.

◆ restart()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::restart ( ifstream &  restart_file)

Read problem-specific parameter values, then recover generic problem data.

Read solution from disk.

Definition at line 702 of file shock_disk.cc.

◆ run()

template<class ELEMENT , class TIMESTEPPER >
void DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::run ( const unsigned &  case_number)

Run the problem; specify case_number to label output directory.

Definition at line 714 of file shock_disk.cc.

References Global_Physical_Variables::P.

Referenced by main().

◆ solid_mesh_pt()

template<class ELEMENT , class TIMESTEPPER >
ElasticRefineableQuarterCircleSectorMesh<ELEMENT>*& DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::solid_mesh_pt ( )
inline

Access function for the solid mesh.

Definition at line 220 of file shock_disk.cc.

◆ traction_mesh_pt()

template<class ELEMENT , class TIMESTEPPER >
SolidMesh*& DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::traction_mesh_pt ( )
inline

Access function for the mesh of surface traction elements.

Definition at line 226 of file shock_disk.cc.

Member Data Documentation

◆ Doc_info

template<class ELEMENT , class TIMESTEPPER >
DocInfo DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::Doc_info
private

Definition at line 258 of file shock_disk.cc.

◆ Solid_mesh_pt

template<class ELEMENT , class TIMESTEPPER >
ElasticRefineableQuarterCircleSectorMesh<ELEMENT>* DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::Solid_mesh_pt
private

Pointer to solid mesh.

Definition at line 267 of file shock_disk.cc.

◆ Trace_file

template<class ELEMENT , class TIMESTEPPER >
ofstream DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::Trace_file
private

Trace file.

Definition at line 261 of file shock_disk.cc.

◆ Trace_node_pt

template<class ELEMENT , class TIMESTEPPER >
Vector<Node*> DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::Trace_node_pt
private

Vector of pointers to nodes whose position we're tracing.

Definition at line 264 of file shock_disk.cc.

◆ Traction_mesh_pt

template<class ELEMENT , class TIMESTEPPER >
SolidMesh* DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::Traction_mesh_pt
private

Pointer to mesh of traction elements.

Definition at line 270 of file shock_disk.cc.


The documentation for this class was generated from the following file: