Public Member Functions | |
InterfaceProblem (const unsigned &n_r, const unsigned &n_y, const unsigned &n_theta, const double &r_min, const double &r_max, const double &l_y, const double &theta_max) | |
Problem constructor. More... | |
void | actions_before_newton_convergence_check () |
void | unsteady_run (const unsigned &nstep) |
Run an unsteady simulation with specified number of steps. More... | |
void | doc_solution (DocInfo &doc_info) |
Doc the solution. More... | |
double | compute_total_mass () |
Compute the total mass. More... | |
InterfaceProblem (const unsigned &n_r, const unsigned &n_z, const double &l_z) | |
Constructor for single fluid interface problem. More... | |
~InterfaceProblem () | |
Destructor (empty) More... | |
void | actions_before_newton_convergence_check () |
void | set_initial_condition () |
double | global_temporal_error_norm () |
void | doc_solution (DocInfo &doc_info) |
Doc the solution. More... | |
void | unsteady_run (const double &t_max, const double &dt) |
Do unsteady run up to maximum time t_max with given timestep dt. More... | |
double | compute_total_mass () |
Compute the total mass of the insoluble surfactant. More... | |
InterfaceProblem (const unsigned &n_r, const unsigned &n_z, const double &l_z) | |
~InterfaceProblem () | |
Destructor (empty) More... | |
void | set_initial_condition () |
double | global_temporal_error_norm () |
void | doc_solution (DocInfo &doc_info) |
Doc the solution. More... | |
void | unsteady_run (const double &t_max, const double &dt) |
Do unsteady run up to maximum time t_max with given timestep dt. More... | |
double | compute_total_mass () |
Compute the total mass of the insoluble surfactant. More... | |
Public Attributes | |
MyHorizontalSingleLayerSpineMesh< ELEMENT > * | Bulk_mesh_pt |
Access function for the specific mesh. More... | |
Mesh * | Interface_mesh_pt |
Mesh for the free surface (interface) elements. More... | |
ElasticRectangularQuadMesh< ELEMENT > * | Bulk_mesh_pt |
Access function for the specific mesh. More... | |
ConstitutiveLaw * | Constitutive_law_pt |
Pointer to the constitutive law. More... | |
Private Member Functions | |
void | deform_free_surface (const double &epsilon) |
Deform the mesh/free surface to a prescribed function. More... | |
void | deform_free_surface (const double &epsilon) |
Deform the mesh/free surface to a prescribed function. More... | |
Private Attributes | |
ofstream | Trace_file |
Trace file. More... | |
double | R_max |
Axial lengths of domain. More... | |
double | L_y |
AnnularSpineMesh< ELEMENT > * | Bulk_mesh_pt |
Pointer to bulk mesh. More... | |
Mesh * | Surface_mesh_pt |
Pointer to the surface mes. More... | |
Node * | Document_node_pt |
Pointer to a node for documentation purposes. More... | |
Single fluid interface problem including transport of an insoluble surfactant.
Single axisymmetric fluid interface problem including the transport of an insoluble surfactant.
Single axisymmetric fluid interface problem including the transport of an soluble surfactant.
Definition at line 200 of file 3d_rayleigh_instability_surfactant.cc.
InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem | ( | const unsigned & | n_r, |
const unsigned & | n_y, | ||
const unsigned & | n_theta, | ||
const double & | r_min, | ||
const double & | r_max, | ||
const double & | l_y, | ||
const double & | theta_max | ||
) |
Problem constructor.
Constructor: Pass number of elements in x and y directions. Also lengths of the domain in x- and y-directions and the height of the layer
Definition at line 275 of file 3d_rayleigh_instability_surfactant.cc.
References Global_Physical_Variables::Beta, oomph::SurfactantTransportInterfaceElement::beta_pt(), Global_Physical_Variables::Ca, oomph::FluidInterfaceElement::ca_pt(), Global_Physical_Variables::G(), Global_Physical_Variables::Peclet_S, oomph::SurfactantTransportInterfaceElement::peclet_s_pt(), Global_Physical_Variables::Peclet_St_S, oomph::SurfactantTransportInterfaceElement::peclet_strouhal_s_pt(), Global_Physical_Variables::Re, Global_Physical_Variables::ReInvFr, Global_Physical_Variables::ReSt, and oomph::FluidInterfaceElement::set_external_pressure_data().
Referenced by InterfaceProblem< ELEMENT, TIMESTEPPER >::deform_free_surface().
InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem | ( | const unsigned & | n_r, |
const unsigned & | n_z, | ||
const double & | l_z | ||
) |
Constructor for single fluid interface problem.
Constructor: Pass the number of elements in radial and axial directions and the length of the domain in the z direction)
Definition at line 920 of file rayleigh_instability_insoluble_surfactant.cc.
References Global_Physical_Variables::Beta, oomph::SpineAxisymmetricMarangoniSurfactantFluidInterfaceElement< ELEMENT >::beta_pt(), Global_Physical_Variables::Ca, oomph::FluidInterfaceElement::ca_pt(), InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution(), Global_Physical_Variables::G(), Global_Physical_Variables::P_ext, Global_Physical_Variables::Peclet_S, oomph::SpineAxisymmetricMarangoniSurfactantFluidInterfaceElement< ELEMENT >::peclet_s_pt(), Global_Physical_Variables::Peclet_St_S, oomph::SpineAxisymmetricMarangoniSurfactantFluidInterfaceElement< ELEMENT >::peclet_strouhal_s_pt(), Global_Physical_Variables::Pvd_file, Global_Physical_Variables::Re, Global_Physical_Variables::ReInvFr, Global_Physical_Variables::ReSt, oomph::FluidInterfaceElement::set_external_pressure_data(), and InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run().
|
inline |
Destructor (empty)
Definition at line 765 of file rayleigh_instability_insoluble_surfactant.cc.
InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem | ( | const unsigned & | n_r, |
const unsigned & | n_z, | ||
const double & | l_z | ||
) |
Constructor: Pass the number of elements in radial and axial directions and the length of the domain in the z direction)
|
inline |
Destructor (empty)
Definition at line 428 of file rayleigh_instability_soluble_surfactant.cc.
|
inline |
Spine heights/lengths are unknowns in the problem so their values get corrected during each Newton step. However, changing their value does not automatically change the nodal positions, so we need to update all of them
Definition at line 217 of file 3d_rayleigh_instability_surfactant.cc.
|
inline |
Spine heights/lengths are unknowns in the problem so their values get corrected during each Newton step. However, changing their value does not automatically change the nodal positions, so we need to update all of them here.
Definition at line 771 of file rayleigh_instability_insoluble_surfactant.cc.
|
inline |
Compute the total mass.
Definition at line 226 of file 3d_rayleigh_instability_surfactant.cc.
References oomph::SurfactantTransportInterfaceElement::integrate_c().
|
inline |
Compute the total mass of the insoluble surfactant.
Definition at line 521 of file rayleigh_instability_soluble_surfactant.cc.
References oomph::SurfactantTransportInterfaceElement::integrate_c().
|
inline |
Compute the total mass of the insoluble surfactant.
Definition at line 859 of file rayleigh_instability_insoluble_surfactant.cc.
References oomph::SpineAxisymmetricMarangoniSurfactantFluidInterfaceElement< ELEMENT >::integrate_c().
|
inlineprivate |
Deform the mesh/free surface to a prescribed function.
Definition at line 546 of file rayleigh_instability_soluble_surfactant.cc.
References Global_Physical_Variables::Alpha, Global_Physical_Variables::Alpha_absorption, ElasticAxisymmetricSolubleSurfactantTransportInterfaceElement< ELEMENT >::alpha_pt(), Global_Physical_Variables::Beta, oomph::SurfactantTransportInterfaceElement::beta_pt(), Global_Physical_Variables::Ca, oomph::FluidInterfaceElement::ca_pt(), Global_Physical_Variables::Diff, InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution(), Global_Physical_Variables::Epsilon, Global_Physical_Variables::Film_Thickness, Global_Physical_Variables::G(), InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem(), Global_Physical_Variables::K, ElasticAxisymmetricSolubleSurfactantTransportInterfaceElement< ELEMENT >::k_pt(), Global_Physical_Variables::Nu, Global_Physical_Variables::P_ext, Global_Physical_Variables::Pe_reference_scale, Global_Physical_Variables::Peclet_S, oomph::SurfactantTransportInterfaceElement::peclet_s_pt(), Global_Physical_Variables::Peclet_St_S, oomph::SurfactantTransportInterfaceElement::peclet_strouhal_s_pt(), Global_Physical_Variables::Re, Global_Physical_Variables::ReInvFr, Global_Physical_Variables::ReSt, oomph::FluidInterfaceElement::set_external_pressure_data(), and InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run().
|
inlineprivate |
Deform the mesh/free surface to a prescribed function.
Definition at line 884 of file rayleigh_instability_insoluble_surfactant.cc.
References Global_Physical_Variables::Alpha, Global_Physical_Variables::Film_Thickness, and InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem().
void InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution | ( | DocInfo & | doc_info | ) |
Doc the solution.
Definition at line 447 of file 3d_rayleigh_instability_surfactant.cc.
Referenced by InterfaceProblem< ELEMENT, TIMESTEPPER >::deform_free_surface(), and InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem().
void InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution | ( | DocInfo & | doc_info | ) |
Doc the solution.
void InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution | ( | DocInfo & | doc_info | ) |
Doc the solution.
|
inline |
The global temporal error norm, based on the movement of the nodes in the radial direction only (because that's the only direction in which they move!)
Definition at line 461 of file rayleigh_instability_soluble_surfactant.cc.
|
inline |
The global temporal error norm, based on the movement of the nodes in the radial direction only (because that's the only direction in which they move!)
Definition at line 805 of file rayleigh_instability_insoluble_surfactant.cc.
|
inline |
Set initial conditions: Set all nodal velocities to zero and initialise the previous velocities to correspond to an impulsive start
Definition at line 433 of file rayleigh_instability_soluble_surfactant.cc.
|
inline |
Set initial conditions: Set all nodal velocities to zero and initialise the previous velocities to correspond to an impulsive start
Definition at line 779 of file rayleigh_instability_insoluble_surfactant.cc.
void InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run | ( | const unsigned & | nstep | ) |
Run an unsteady simulation with specified number of steps.
Unsteady run with specified number of steps.
Definition at line 488 of file 3d_rayleigh_instability_surfactant.cc.
References Global_Physical_Variables::Alpha, Global_Physical_Variables::Epsilon, and Global_Physical_Variables::Film_Thickness.
Referenced by InterfaceProblem< ELEMENT, TIMESTEPPER >::deform_free_surface(), InterfaceProblem< ELEMENT, TIMESTEPPER >::InterfaceProblem(), and main().
void InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run | ( | const double & | t_max, |
const double & | dt | ||
) |
Do unsteady run up to maximum time t_max with given timestep dt.
void InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run | ( | const double & | t_max, |
const double & | dt | ||
) |
Do unsteady run up to maximum time t_max with given timestep dt.
Perform run up to specified time t_max with given timestep dt.
Definition at line 1170 of file rayleigh_instability_insoluble_surfactant.cc.
References Global_Physical_Variables::Epsilon, and Global_Physical_Variables::Pvd_file.
|
private |
Pointer to bulk mesh.
Definition at line 259 of file 3d_rayleigh_instability_surfactant.cc.
ElasticRectangularQuadMesh<ELEMENT>* InterfaceProblem< ELEMENT, TIMESTEPPER >::Bulk_mesh_pt |
Access function for the specific mesh.
Definition at line 503 of file rayleigh_instability_soluble_surfactant.cc.
MyHorizontalSingleLayerSpineMesh<ELEMENT>* InterfaceProblem< ELEMENT, TIMESTEPPER >::Bulk_mesh_pt |
Access function for the specific mesh.
Definition at line 847 of file rayleigh_instability_insoluble_surfactant.cc.
ConstitutiveLaw* InterfaceProblem< ELEMENT, TIMESTEPPER >::Constitutive_law_pt |
Pointer to the constitutive law.
Definition at line 509 of file rayleigh_instability_soluble_surfactant.cc.
|
private |
Pointer to a node for documentation purposes.
Node for documentatin.
Definition at line 265 of file 3d_rayleigh_instability_surfactant.cc.
Mesh * InterfaceProblem< ELEMENT, TIMESTEPPER >::Interface_mesh_pt |
Mesh for the free surface (interface) elements.
Definition at line 850 of file rayleigh_instability_insoluble_surfactant.cc.
|
private |
Definition at line 256 of file 3d_rayleigh_instability_surfactant.cc.
|
private |
Axial lengths of domain.
Definition at line 254 of file 3d_rayleigh_instability_surfactant.cc.
|
private |
Pointer to the surface mes.
Definition at line 262 of file 3d_rayleigh_instability_surfactant.cc.
|
private |
Trace file.
Definition at line 251 of file 3d_rayleigh_instability_surfactant.cc.