Problem class. More...
#include <fsi_chan_problem.h>
Public Member Functions | |
FSICollapsibleChannelProblem (const unsigned &nup, const unsigned &ncollapsible, const unsigned &ndown, const unsigned &ny, const double &lup, const double &lcollapsible, const double &ldown, const double &ly, const bool &displ_control, const bool &steady_flag) | |
Constructor: The arguments are the number of elements and the lengths of the domain. More... | |
~FSICollapsibleChannelProblem () | |
Destructor. More... | |
virtual void | steady_run () |
Steady run. More... | |
virtual void | unsteady_run (const double &dt=0.1) |
Unsteady run; virtual so it can be overloaded in derived problem classes. Specify timestep or use default of 0.1. More... | |
AlgebraicCollapsibleChannelMesh< ELEMENT > * | bulk_mesh_pt () |
Access function for the specific bulk (fluid) mesh. More... | |
OneDLagrangianMesh< FSIHermiteBeamElement > * | wall_mesh_pt () |
Access function for the wall mesh. More... | |
void | actions_before_newton_solve () |
Actions before solve. Reset counter for number of Newton iterations. More... | |
void | actions_after_newton_solve () |
Update the problem after solve (empty) More... | |
void | actions_before_newton_convergence_check () |
Update before checking Newton convergence: Update the nodal positions in the fluid mesh in response to possible changes in the wall shape. More... | |
virtual void | doc_solution_steady (DocInfo &doc_info, ofstream &trace_file, const double &cpu, const unsigned &niter) |
Doc the steady solution. More... | |
virtual void | doc_solution_unsteady (DocInfo &doc_info, ofstream &trace_file, const double &cpu, const unsigned &niter) |
Doc the unsteady solution. More... | |
void | set_initial_condition () |
Apply initial conditions. More... | |
Protected Member Functions | |
void | dump_it (ofstream &dump_file) |
Dump problem to disk to allow for restart. More... | |
void | restart (ifstream &restart_file) |
Read problem for restart from specified restart file. More... | |
Protected Attributes | |
unsigned | Nup |
Number of elements in the x direction in the upstream part of the channel. More... | |
unsigned | Ncollapsible |
Number of elements in the x direction in the collapsible part of the channel. More... | |
unsigned | Ndown |
Number of elements in the x direction in the downstream part of the channel. More... | |
unsigned | Ny |
Number of elements across the channel. More... | |
double | Lup |
x-length in the upstream part of the channel More... | |
double | Lcollapsible |
x-length in the collapsible part of the channel More... | |
double | Ldown |
x-length in the downstream part of the channel More... | |
double | Ly |
Transverse length. More... | |
AlgebraicCollapsibleChannelMesh< ELEMENT > * | Bulk_mesh_pt |
Pointer to the "bulk" mesh. More... | |
Mesh * | Displ_control_mesh_pt |
Pointer to the mesh that contains the displacement control element. More... | |
bool | Displ_control |
Use displacement control? More... | |
OneDLagrangianMesh< FSIHermiteBeamElement > * | Wall_mesh_pt |
Pointer to the "wall" mesh. More... | |
Node * | Left_node_pt |
Pointer to the left control node. More... | |
Node * | Right_node_pt |
Pointer to right control node. More... | |
Node * | Wall_node_pt |
Pointer to control node on the wall. More... | |
bool | Steady_flag |
Flag for steady run. More... | |
GeomObject * | Ctrl_geom_obj_pt |
Vector< double > | S_displ_ctrl |
Vector of local coordinates of displacement control point in Ctrl_geom_obj_pt. More... | |
MeshAsGeomObject * | Wall_geom_object_pt |
Pointer to geometric object (one Lagrangian, two Eulerian coordinates) that will be built from the wall mesh. More... | |
unsigned | Newton_iter |
Counter for Newton iterations. More... | |
DocInfo | Doc_info |
DocInfo object. More... | |
Problem class.
Definition at line 318 of file fsi_chan_problem.h.
FSICollapsibleChannelProblem< ELEMENT >::FSICollapsibleChannelProblem | ( | const unsigned & | nup, |
const unsigned & | ncollapsible, | ||
const unsigned & | ndown, | ||
const unsigned & | ny, | ||
const double & | lup, | ||
const double & | lcollapsible, | ||
const double & | ldown, | ||
const double & | ly, | ||
const bool & | displ_control, | ||
const bool & | steady_flag | ||
) |
Constructor: The arguments are the number of elements and the lengths of the domain.
Constructor for the collapsible channel problem.
Definition at line 487 of file fsi_chan_problem.h.
References FSICollapsibleChannelProblem< ELEMENT >::doc_solution_steady(), Global_Physical_Variables::H, Global_Physical_Variables::load(), Global_Physical_Variables::P_ext_data_pt, Global_Physical_Variables::Q, Global_Physical_Variables::Re, Global_Physical_Variables::ReSt, Global_Physical_Variables::Sigma0, Flags::Steady_flag, and Global_Physical_Variables::Yprescr.
|
inline |
Destructor.
Definition at line 337 of file fsi_chan_problem.h.
|
inline |
Update the problem after solve (empty)
Definition at line 375 of file fsi_chan_problem.h.
|
inline |
Update before checking Newton convergence: Update the nodal positions in the fluid mesh in response to possible changes in the wall shape.
Definition at line 381 of file fsi_chan_problem.h.
|
inline |
Actions before solve. Reset counter for number of Newton iterations.
Definition at line 369 of file fsi_chan_problem.h.
|
inline |
Access function for the specific bulk (fluid) mesh.
Definition at line 351 of file fsi_chan_problem.h.
Referenced by SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution(), and SegregatedFSICollapsibleChannelProblem< ELEMENT >::identify_fluid_and_solid_dofs().
|
virtual |
Doc the steady solution.
Doc the solution for a steady run.
Definition at line 857 of file fsi_chan_problem.h.
References FSICollapsibleChannelProblem< ELEMENT >::doc_solution_unsteady(), Global_Physical_Variables::P_ext_data_pt, and Global_Physical_Variables::Yprescr.
Referenced by FSICollapsibleChannelProblem< ELEMENT >::FSICollapsibleChannelProblem().
|
virtual |
Doc the unsteady solution.
Doc the solution for an unstady run.
Definition at line 918 of file fsi_chan_problem.h.
Referenced by FSICollapsibleChannelProblem< ELEMENT >::doc_solution_steady().
|
protected |
Dump problem to disk to allow for restart.
Dump the solution to disk to allow for restart.
Definition at line 978 of file fsi_chan_problem.h.
References Global_Physical_Variables::P_ext_data_pt.
|
protected |
Read problem for restart from specified restart file.
Read solution from disk for restart.
Definition at line 1020 of file fsi_chan_problem.h.
References Global_Physical_Variables::P_ext_data_pt, and Global_Physical_Variables::P_step.
void FSICollapsibleChannelProblem< ELEMENT >::set_initial_condition | ( | ) |
Apply initial conditions.
Definition at line 1077 of file fsi_chan_problem.h.
References Flags::Restart_file_name, and Flags::Steady_flag.
Referenced by SegregatedFSICollapsibleChannelProblem< ELEMENT >::steady_run().
|
virtual |
Steady run.
Steady run; virtual so it can be overloaded in derived problem classes
Reimplemented in SegregatedFSICollapsibleChannelProblem< ELEMENT >.
Definition at line 1164 of file fsi_chan_problem.h.
References Flags::Nsteps, Global_Physical_Variables::P_ext_data_pt, Global_Physical_Variables::Pmax, Global_Physical_Variables::Pmin, Global_Physical_Variables::Q, Global_Physical_Variables::Re, Flags::Resolution_factor, Flags::Run_identifier_string, Global_Physical_Variables::Yprescr, and Global_Physical_Variables::Yprescr_min.
|
virtual |
Unsteady run; virtual so it can be overloaded in derived problem classes. Specify timestep or use default of 0.1.
Unsteady run. Specify timestep or use default of 0.1.
Definition at line 1286 of file fsi_chan_problem.h.
References Flags::Nsteps, Global_Physical_Variables::P_ext_data_pt, Global_Physical_Variables::Pmax, Global_Physical_Variables::Q, Global_Physical_Variables::Re, Flags::Resolution_factor, and Flags::Run_identifier_string.
|
inline |
Access function for the wall mesh.
Definition at line 361 of file fsi_chan_problem.h.
Referenced by SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution(), and SegregatedFSICollapsibleChannelProblem< ELEMENT >::identify_fluid_and_solid_dofs().
|
protected |
Pointer to the "bulk" mesh.
Definition at line 437 of file fsi_chan_problem.h.
|
protected |
Pointer to GeomObject at which displacement control is applied (or at which wall displacement is monitored in unsteady runs)
Definition at line 462 of file fsi_chan_problem.h.
|
protected |
Use displacement control?
Definition at line 443 of file fsi_chan_problem.h.
Referenced by SegregatedFSICollapsibleChannelProblem< ELEMENT >::identify_fluid_and_solid_dofs(), and SegregatedFSICollapsibleChannelProblem< ELEMENT >::steady_run().
|
protected |
Pointer to the mesh that contains the displacement control element.
Definition at line 440 of file fsi_chan_problem.h.
Referenced by SegregatedFSICollapsibleChannelProblem< ELEMENT >::identify_fluid_and_solid_dofs().
|
protected |
DocInfo object.
Definition at line 476 of file fsi_chan_problem.h.
|
protected |
x-length in the collapsible part of the channel
Definition at line 428 of file fsi_chan_problem.h.
|
protected |
x-length in the downstream part of the channel
Definition at line 431 of file fsi_chan_problem.h.
|
protected |
Pointer to the left control node.
Definition at line 449 of file fsi_chan_problem.h.
|
protected |
x-length in the upstream part of the channel
Definition at line 425 of file fsi_chan_problem.h.
|
protected |
Transverse length.
Definition at line 434 of file fsi_chan_problem.h.
|
protected |
Number of elements in the x direction in the collapsible part of the channel.
Definition at line 416 of file fsi_chan_problem.h.
|
protected |
Number of elements in the x direction in the downstream part of the channel.
Definition at line 419 of file fsi_chan_problem.h.
|
protected |
Counter for Newton iterations.
Definition at line 473 of file fsi_chan_problem.h.
|
protected |
Number of elements in the x direction in the upstream part of the channel.
Definition at line 412 of file fsi_chan_problem.h.
|
protected |
Number of elements across the channel.
Definition at line 422 of file fsi_chan_problem.h.
|
protected |
Pointer to right control node.
Definition at line 452 of file fsi_chan_problem.h.
|
protected |
Vector of local coordinates of displacement control point in Ctrl_geom_obj_pt.
Definition at line 466 of file fsi_chan_problem.h.
|
protected |
Flag for steady run.
Definition at line 458 of file fsi_chan_problem.h.
|
protected |
Pointer to geometric object (one Lagrangian, two Eulerian coordinates) that will be built from the wall mesh.
Definition at line 470 of file fsi_chan_problem.h.
|
protected |
Pointer to the "wall" mesh.
Definition at line 446 of file fsi_chan_problem.h.
|
protected |
Pointer to control node on the wall.
Definition at line 455 of file fsi_chan_problem.h.