3d_free_surface.cc File Reference
#include <iostream>
#include <fstream>
#include <cmath>
#include <typeinfo>
#include <algorithm>
#include <cstdio>
#include <complex>
#include "generic.h"
#include "navier_stokes.h"
#include "fluid_interface.h"
#include "constitutive.h"
#include "solid.h"
#include "meshes/single_layer_cubic_spine_mesh.h"

Classes

class  InterfaceProblem< ELEMENT, TIMESTEPPER >
 Single axisymmetric fluid interface problem in rectangular domain. More...
 
class  ElasticSimpleCubicMesh< ELEMENT >
 Elastic version of the simple cubic mesh. More...
 
class  ElasticInterfaceProblem< ELEMENT, TIMESTEPPER >
 Elastic version of Single fluid interface problem. More...
 

Namespaces

 Global_Physical_Variables
 Global variables.
 

Functions

int main (int argc, char *argv[])
 

Variables

Vector< doubleGlobal_Physical_Variables::G (3) = 1.0
 Direction of gravity. More...
 

Function Documentation

◆ main()

int main ( int argc  ,
char argv[] 
)

Driver code for unsteady two-layer fluid problem. If there are any command line arguments, we regard this as a validation run and perform only two steps.

732 {
733 
734  // Set physical parameters:
735 
736  //Set direction of gravity: Vertically downwards
740 
741  // Womersley number = Reynolds number (St = 1)
744 
745  // The Capillary number
747 
748  // Re/Fr
750 
751  //Axial lngth of domain
752  double lx = 2.0;
753 
754  double ly = 2.0;
755 
756  // Number of elements in x- and y-direction
757  unsigned nx=5;
758 
759  unsigned ny = 5;
760 
761  // Number of elements in layer
762  unsigned nz=7;
763 
764  // Height of layer
765  double h=1.0;
766 
767  {
768  //Set up the spine test problem
770  problem(nx,ny,nz,lx,ly,h);
771 
772  // Number of steps:
773  unsigned nstep;
774  if(argc > 1)
775  {
776  // Validation run: Just two steps
777  nstep=2;
778  }
779  else
780  {
781  // Full run otherwise
782  nstep=160;
783  }
784 
785  // Run the unsteady simulation
786  problem.unsteady_run(nstep);
787  }
788 
789  //Set the constituive law
792 
793  {
794  //Set up the spine test problem
798  problem(nx,ny,nz,lx,ly,h);
799 
800  // Number of steps:
801  unsigned nstep;
802  if(argc > 1)
803  {
804  // Validation run: Just two steps
805  nstep=2;
806  }
807  else
808  {
809  // Full run otherwise
810  nstep=160;
811  }
812 
813  // Run the unsteady simulation
814  problem.unsteady_run(nstep);
815  }
816 
817 
818 }
Elastic version of Single fluid interface problem.
Definition: 3d_free_surface.cc:413
Single axisymmetric fluid interface problem in rectangular domain.
Definition: rayleigh_instability.cc:87
Definition: constitutive_laws.h:699
Definition: pseudosolid_node_update_elements.h:58
Definition: navier_stokes_elements.h:1749
Definition: solid_elements.h:1332
double ReSt
Womersley number.
Definition: rayleigh_instability.cc:56
double Nu
Poisson's ratio.
Definition: TwenteMeshGluing.cpp:71
ConstitutiveLaw * Constitutive_law_pt
Pointer to constitutive law.
Definition: TwenteMeshGluing.cpp:65
double Ca
Capillary number.
Definition: fibre.cc:61
double ReInvFr
Product of Reynolds number and inverse of Froude number.
Definition: fibre.cc:58
double Re
Reynolds number.
Definition: fibre.cc:55
Vector< double > G(3)
Direction of gravity.
Definition: spherical_shell_convection.cc:62
const unsigned nz
Definition: ConstraintElementsUnitTest.cpp:32
const double ly
Definition: ConstraintElementsUnitTest.cpp:34
const double lx
Definition: ConstraintElementsUnitTest.cpp:33
const unsigned nx
Definition: ConstraintElementsUnitTest.cpp:30
const unsigned ny
Definition: ConstraintElementsUnitTest.cpp:31
Constructor for SteadyAxisymAdvectionDiffusion problem
Definition: steady_axisym_advection_diffusion.cc:213

References Global_Physical_Variables::Ca, Global_Physical_Variables::Constitutive_law_pt, Global_Physical_Variables::G, Mesh_Parameters::lx, Mesh_Parameters::ly, Global_Physical_Variables::Nu, Mesh_Parameters::nx, Mesh_Parameters::ny, Mesh_Parameters::nz, problem, Global_Physical_Variables::Re, Global_Physical_Variables::ReInvFr, and Global_Physical_Variables::ReSt.