Public Member Functions | Private Member Functions | Private Attributes | List of all members
RefineableFishPoissonProblem< ELEMENT > Class Template Reference
Inheritance diagram for RefineableFishPoissonProblem< ELEMENT >:

Public Member Functions

 RefineableFishPoissonProblem (const bool &fix_position, const string &directory_name, const unsigned &i_case)
 Constructor: Bool flag specifies if position of fish back is prescribed or computed from the coupled problem. String specifies output directory. More...
 
virtual ~RefineableFishPoissonProblem ()
 Destructor. More...
 
void actions_before_newton_convergence_check ()
 Update after Newton step: Update mesh in response to possible changes in the wall shape. More...
 
void actions_after_newton_solve ()
 Update the problem specs after solve (empty) More...
 
void actions_before_newton_solve ()
 Update the problem specs before solve: Update mesh. More...
 
AlgebraicRefineableFishMesh< ELEMENT > * fish_mesh_pt ()
 
double & load ()
 Return value of the "load" on the elastically supported ring. More...
 
double & y_c ()
 Return value of the vertical displacement of the ring that represents the fish's back. More...
 
void doc_solution ()
 Doc the solution. More...
 
DocInfo & doc_info ()
 Access to DocInfo object. More...
 
 RefineableFishPoissonProblem (bool fix_position, string directory_name)
 Constructor: Bool flag specifies if position of fish back is prescribed or computed from the coupled problem. String specifies output directory. More...
 
virtual ~RefineableFishPoissonProblem ()
 Destructor. More...
 
void actions_before_newton_convergence_check ()
 Update after Newton step: Update in response to possible changes in the wall shape. More...
 
void actions_before_newton_solve ()
 Update the problem specs before solve: Update nodal positions. More...
 
void actions_after_newton_solve ()
 Update the problem specs after solve (empty) More...
 
MacroElementNodeUpdateRefineableFishMesh< ELEMENT > * fish_mesh_pt ()
 
double & load ()
 Return value of the "load" on the elastically supported ring that represents the fish's back. More...
 
double & y_c ()
 Return value of the vertical displacement of the ring that represents the fish's back. More...
 
void doc_solution ()
 Doc the solution. More...
 
DocInfo & doc_info ()
 Access to DocInfo object. More...
 

Private Member Functions

void set_shape_deriv_method ()
 Helper fct to set method for evaluation of shape derivs. More...
 

Private Attributes

Node * Doc_node_pt
 Node at which the solution of the Poisson equation is documented. More...
 
ofstream Trace_file
 Trace file. More...
 
AlgebraicRefineableFishMesh< ELEMENT > * Fish_mesh_pt
 Pointer to fish mesh. More...
 
Mesh * Fish_back_mesh_pt
 
Data * Load_pt
 Pointer to data item that stores the "load" on the fish back. More...
 
bool Fix_position
 Is the position of the fish back prescribed? More...
 
DocInfo Doc_info
 Doc info object. More...
 
unsigned Case_id
 Case id. More...
 
MacroElementNodeUpdateRefineableFishMesh< ELEMENT > * Fish_mesh_pt
 Pointer to fish mesh. More...
 

Detailed Description

template<class ELEMENT>
class RefineableFishPoissonProblem< ELEMENT >

Refineable Poisson problem in deformable fish-shaped domain. Template parameter identify the elements.

Refineable Poisson problem in deformable fish-shaped domain. Template parameter identifies the element.

Definition at line 84 of file algebraic_free_boundary_poisson.cc.

Constructor & Destructor Documentation

◆ RefineableFishPoissonProblem() [1/2]

template<class ELEMENT >
RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem ( const bool &  fix_position,
const string &  directory_name,
const unsigned &  i_case 
)

Constructor: Bool flag specifies if position of fish back is prescribed or computed from the coupled problem. String specifies output directory.

Constructor for adaptive Poisson problem in deformable fish-shaped domain. Pass flag if position of fish back is fixed, and the output directory.

Loop over elements and set pointers to source function

Definition at line 244 of file algebraic_free_boundary_poisson.cc.

References RefineableFishPoissonProblem< ELEMENT >::Doc_info, RefineableFishPoissonProblem< ELEMENT >::Doc_node_pt, RefineableFishPoissonProblem< ELEMENT >::Fish_back_mesh_pt, RefineableFishPoissonProblem< ELEMENT >::fish_mesh_pt(), RefineableFishPoissonProblem< ELEMENT >::Fish_mesh_pt, RefineableFishPoissonProblem< ELEMENT >::Fix_position, ConstSourceForPoisson::get_source(), RefineableFishPoissonProblem< ELEMENT >::Load_pt, RefineableFishPoissonProblem< ELEMENT >::set_shape_deriv_method(), RefineableFishPoissonProblem< ELEMENT >::Trace_file, and RefineableFishPoissonProblem< ELEMENT >::y_c().

◆ ~RefineableFishPoissonProblem() [1/2]

template<class ELEMENT >
RefineableFishPoissonProblem< ELEMENT >::~RefineableFishPoissonProblem ( )
virtual

Destructor.

Destructor for Poisson problem in deformable fish-shaped domain.

Definition at line 394 of file algebraic_free_boundary_poisson.cc.

References RefineableFishPoissonProblem< ELEMENT >::Trace_file.

Referenced by RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ RefineableFishPoissonProblem() [2/2]

template<class ELEMENT >
RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem ( bool  fix_position,
string  directory_name 
)

◆ ~RefineableFishPoissonProblem() [2/2]

template<class ELEMENT>
virtual RefineableFishPoissonProblem< ELEMENT >::~RefineableFishPoissonProblem ( )
virtual

Destructor.

Member Function Documentation

◆ actions_after_newton_solve() [1/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::actions_after_newton_solve ( )
inline

Update the problem specs after solve (empty)

Definition at line 107 of file algebraic_free_boundary_poisson.cc.

◆ actions_after_newton_solve() [2/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::actions_after_newton_solve ( )
inline

Update the problem specs after solve (empty)

Definition at line 117 of file old_for_doc.cc.

◆ actions_before_newton_convergence_check() [1/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::actions_before_newton_convergence_check ( )
inline

Update after Newton step: Update mesh in response to possible changes in the wall shape.

Definition at line 101 of file algebraic_free_boundary_poisson.cc.

◆ actions_before_newton_convergence_check() [2/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::actions_before_newton_convergence_check ( )
inline

Update after Newton step: Update in response to possible changes in the wall shape.

Definition at line 104 of file old_for_doc.cc.

◆ actions_before_newton_solve() [1/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::actions_before_newton_solve ( )
inline

Update the problem specs before solve: Update mesh.

Definition at line 110 of file algebraic_free_boundary_poisson.cc.

◆ actions_before_newton_solve() [2/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::actions_before_newton_solve ( )
inline

Update the problem specs before solve: Update nodal positions.

Definition at line 111 of file old_for_doc.cc.

◆ doc_info() [1/2]

template<class ELEMENT>
DocInfo& RefineableFishPoissonProblem< ELEMENT >::doc_info ( )
inline

Access to DocInfo object.

Definition at line 140 of file algebraic_free_boundary_poisson.cc.

Referenced by demo_fish_poisson().

◆ doc_info() [2/2]

template<class ELEMENT>
DocInfo& RefineableFishPoissonProblem< ELEMENT >::doc_info ( )
inline

Access to DocInfo object.

Definition at line 144 of file old_for_doc.cc.

◆ doc_solution() [1/2]

template<class ELEMENT >
void RefineableFishPoissonProblem< ELEMENT >::doc_solution ( )

◆ doc_solution() [2/2]

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::doc_solution ( )

Doc the solution.

◆ fish_mesh_pt() [1/2]

template<class ELEMENT>
AlgebraicRefineableFishMesh<ELEMENT>* RefineableFishPoissonProblem< ELEMENT >::fish_mesh_pt ( )
inline

◆ fish_mesh_pt() [2/2]

template<class ELEMENT>
MacroElementNodeUpdateRefineableFishMesh<ELEMENT>* RefineableFishPoissonProblem< ELEMENT >::fish_mesh_pt ( )
inline

Definition at line 120 of file old_for_doc.cc.

◆ load() [1/2]

template<class ELEMENT>
double& RefineableFishPoissonProblem< ELEMENT >::load ( )
inline

◆ load() [2/2]

template<class ELEMENT>
double& RefineableFishPoissonProblem< ELEMENT >::load ( )
inline

Return value of the "load" on the elastically supported ring that represents the fish's back.

Definition at line 127 of file old_for_doc.cc.

◆ set_shape_deriv_method()

template<class ELEMENT>
void RefineableFishPoissonProblem< ELEMENT >::set_shape_deriv_method ( )
inlineprivate

Helper fct to set method for evaluation of shape derivs.

Definition at line 145 of file algebraic_free_boundary_poisson.cc.

Referenced by RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ y_c() [1/2]

template<class ELEMENT>
double& RefineableFishPoissonProblem< ELEMENT >::y_c ( )
inline

Return value of the vertical displacement of the ring that represents the fish's back.

Definition at line 130 of file algebraic_free_boundary_poisson.cc.

Referenced by demo_fish_poisson(), RefineableFishPoissonProblem< ELEMENT >::doc_solution(), and RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ y_c() [2/2]

template<class ELEMENT>
double& RefineableFishPoissonProblem< ELEMENT >::y_c ( )
inline

Return value of the vertical displacement of the ring that represents the fish's back.

Definition at line 134 of file old_for_doc.cc.

Member Data Documentation

◆ Case_id

template<class ELEMENT>
unsigned RefineableFishPoissonProblem< ELEMENT >::Case_id
private

◆ Doc_info

template<class ELEMENT>
DocInfo RefineableFishPoissonProblem< ELEMENT >::Doc_info
private

◆ Doc_node_pt

template<class ELEMENT>
Node * RefineableFishPoissonProblem< ELEMENT >::Doc_node_pt
private

Node at which the solution of the Poisson equation is documented.

Node at which the solution of the Poisson equation is documented This solution at this node is also used as the "load" on the ring that represents the fish's back.

Definition at line 208 of file algebraic_free_boundary_poisson.cc.

Referenced by RefineableFishPoissonProblem< ELEMENT >::doc_solution(), and RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ Fish_back_mesh_pt

template<class ELEMENT>
Mesh * RefineableFishPoissonProblem< ELEMENT >::Fish_back_mesh_pt
private

Pointer to single-element mesh that stores the GeneralisedElement that represents the fish back

Pointer to single-element mesh that stores the GeneralisedElement that represents the fish's back

Definition at line 218 of file algebraic_free_boundary_poisson.cc.

Referenced by RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ Fish_mesh_pt [1/2]

template<class ELEMENT>
MacroElementNodeUpdateRefineableFishMesh<ELEMENT>* RefineableFishPoissonProblem< ELEMENT >::Fish_mesh_pt
private

Pointer to fish mesh.

Definition at line 157 of file old_for_doc.cc.

◆ Fish_mesh_pt [2/2]

template<class ELEMENT>
AlgebraicRefineableFishMesh<ELEMENT>* RefineableFishPoissonProblem< ELEMENT >::Fish_mesh_pt
private

◆ Fix_position

template<class ELEMENT>
bool RefineableFishPoissonProblem< ELEMENT >::Fix_position
private

Is the position of the fish back prescribed?

Is the position of the fish's back prescribed?

Definition at line 224 of file algebraic_free_boundary_poisson.cc.

Referenced by RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ Load_pt

template<class ELEMENT>
Data * RefineableFishPoissonProblem< ELEMENT >::Load_pt
private

Pointer to data item that stores the "load" on the fish back.

Definition at line 221 of file algebraic_free_boundary_poisson.cc.

Referenced by RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem().

◆ Trace_file

template<class ELEMENT>
ofstream RefineableFishPoissonProblem< ELEMENT >::Trace_file
private

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