two_layer_soluble_surfactant.cc File Reference

Classes

class  SurfactantProblem< ELEMENT, INTERFACE_ELEMENT >
 

Namespaces

 oomph
 DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
 
 oomph::Control_Parameters
 
 oomph::Global_Physical_Variables
 Namespace for the physical parameters in the problem.
 

Functions

void oomph::Global_Physical_Variables::hydrostatic_pressure_outlet_upper (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &traction)
 
void oomph::Global_Physical_Variables::hydrostatic_pressure_inlet_upper (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &traction)
 Function that prescribes hydrostatic pressure field at the inlet. More...
 
void oomph::Global_Physical_Variables::hydrostatic_pressure_outlet_lower (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &traction)
 
void oomph::Global_Physical_Variables::hydrostatic_pressure_inlet_lower (const double &time, const Vector< double > &x, const Vector< double > &n, Vector< double > &traction)
 Function that prescribes hydrostatic pressure field at the inlet. More...
 
void oomph::Global_Physical_Variables::wall_unit_normal_inlet_fct (const Vector< double > &x, Vector< double > &normal)
 Function that specifies the wall unit normal at the inlet. More...
 
void oomph::Global_Physical_Variables::wall_unit_normal_outlet_fct (const Vector< double > &x, Vector< double > &normal)
 Function that specified the wall unit normal at the outlet. More...
 
int main (int argc, char **argv)
 Driver code for 2D Boussinesq convection problem. More...
 

Variables

Vector< doubleoomph::Global_Physical_Variables::Tau (2, 1.0)
 
Vector< doubleoomph::Global_Physical_Variables::D (2, 1.0)
 
Vector< doubleoomph::Global_Physical_Variables::Direction_of_gravity (2)
 Gravity vector, will be set in the main code. More...
 

Function Documentation

◆ main()

int main ( int argc  ,
char **  argv 
)

Driver code for 2D Boussinesq convection problem.

1217 {
1218  ofstream trace("RESLT/trace.dat");
1219 
1220  // Set the direction of gravity
1223 
1224  //Set the diffusivities (inverse peclect numbers)
1227 
1231 
1232  //Construct the problem
1235  problem;
1236 
1237 
1238  // Apply the boundary condition at time zero
1239  problem.set_boundary_conditions(0.0);
1240 
1241  //Perform a single steady Newton solve
1242  problem.steady_newton_solve();
1243 
1244  //Document the solution
1245  problem.doc_solution(trace);
1246 
1247  //Now release the interface for real fun
1248  problem.unpin_surface();
1249 
1250  //Set the timestep
1251  double dt = 0.1;
1252 
1253  //Initialise the value of the timestep and set initial values
1254  //of previous time levels assuming an impulsive start.
1255  problem.deform_interface(Global_Physical_Variables::Ha,1);
1256  problem.doc_solution(trace);
1257  problem.assign_initial_values_impulsive(dt);
1258 
1259  //Set the number of timesteps to our default value
1260  unsigned n_steps = 1000;
1261 
1262  //If we have a command line argument, perform fewer steps
1263  //(used for self-test runs)
1264  if(argc > 1) {n_steps = 5;}
1265 
1266  //Perform n_steps timesteps
1267  for(unsigned i=0;i<n_steps;++i)
1268  {
1269  // problem.unsteady_newton_solve(dt);
1270  double dt_next = problem.adaptive_unsteady_newton_solve(dt,1.0e-5);
1271  dt = dt_next;
1272  //Limit timestep
1273  //if(dt > 1.0) {dt = 1.0;}
1274  problem.doc_solution(trace);
1275  }
1276 
1277 } // end of main
int i
Definition: BiCGSTAB_step_by_step.cpp:9
Definition: refineable_two_layer_soluble_surfactant.cc:646
Specialise to the Line geometry.
Definition: soluble_surfactant_transport_equations.h:593
Vector< double > D(2, 1.0)
Diffusivity (identically one from our non-dimensionalisation)
Vector< double > Direction_of_gravity(2)
Gravity vector.
Vector< double > Wall_normal
Direction of the wall normal vector.
Definition: axi_static_cap.cc:59
double Pe_b
Bulk Peclet number.
Definition: refineable_two_layer_soluble_surfactant.cc:136
double Ha
Definition: refineable_two_layer_soluble_surfactant.cc:100
double Pe_m
Micelle Pelect number.
Definition: refineable_two_layer_soluble_surfactant.cc:139
Constructor for SteadyAxisymAdvectionDiffusion problem
Definition: steady_axisym_advection_diffusion.cc:213

References Global_Physical_Variables::D, Global_Physical_Variables::Direction_of_gravity, oomph::Global_Physical_Variables::Ha, i, oomph::Global_Physical_Variables::Pe_b, oomph::Global_Physical_Variables::Pe_m, problem, and Global_Physical_Variables::Wall_normal.