Public Member Functions | Private Member Functions | Private Attributes | List of all members
FourierDecomposedHelmholtzProblem< ELEMENT > Class Template Reference

Problem class. More...

Inheritance diagram for FourierDecomposedHelmholtzProblem< ELEMENT >:

Public Member Functions

 FourierDecomposedHelmholtzProblem ()
 Constructor. More...
 
 ~FourierDecomposedHelmholtzProblem ()
 Destructor (empty) More...
 
void actions_before_newton_solve ()
 Update the problem specs before solve (empty) More...
 
void actions_after_newton_solve ()
 Update the problem after solve (empty) More...
 
void doc_solution (DocInfo &doc_info)
 Doc the solution. DocInfo object stores flags/labels for where the output gets written to. More...
 
void actions_before_newton_convergence_check ()
 Recompute gamma integral before checking Newton residuals. More...
 
void check_gamma (DocInfo &doc_info)
 Check gamma computation. More...
 
 FourierDecomposedHelmholtzProblem ()
 Constructor. More...
 
 ~FourierDecomposedHelmholtzProblem ()
 Destructor (empty) More...
 
void actions_before_newton_solve ()
 Update the problem specs before solve (empty) More...
 
void actions_after_newton_solve ()
 Update the problem after solve (empty) More...
 
void doc_solution (DocInfo &doc_info)
 Doc the solution. DocInfo object stores flags/labels for where the output gets written to. More...
 
void actions_before_newton_convergence_check ()
 Recompute gamma integral before checking Newton residuals. More...
 
void actions_before_adapt ()
 Actions before adapt: Wipe the mesh of prescribed flux elements. More...
 
void actions_after_adapt ()
 Actions after adapt: Rebuild the mesh of prescribed flux elements. More...
 
void check_gamma (DocInfo &doc_info)
 Check gamma computation. More...
 

Private Member Functions

void create_outer_bc_elements ()
 Create BC elements on outer boundary. More...
 
void create_flux_elements_on_inner_boundary ()
 Create flux elements on inner boundary. More...
 
void create_outer_bc_elements ()
 Create BC elements on outer boundary. More...
 
void create_flux_elements_on_inner_boundary ()
 Create flux elements on inner boundary. More...
 
void delete_face_elements (Mesh *const &boundary_mesh_pt)
 Delete boundary face elements and wipe the surface mesh. More...
 

Private Attributes

AnnularQuadMesh< ELEMENT > * Bulk_mesh_pt
 Pointer to bulk mesh. More...
 
FourierDecomposedHelmholtzDtNMesh
< ELEMENT > * 
Helmholtz_outer_boundary_mesh_pt
 Pointer to mesh containing the DtN boundary condition elements. More...
 
Mesh * Helmholtz_inner_boundary_mesh_pt
 Mesh of face elements that apply the prescribed flux on the inner boundary. More...
 
RefineableTriangleMesh< ELEMENT > * Bulk_mesh_pt
 Pointer to the "bulk" mesh. More...
 
TriangleMesh< ELEMENT > * Bulk_mesh_pt
 Pointer to the "bulk" mesh. More...
 
ofstream Trace_file
 Trace file. More...
 

Detailed Description

template<class ELEMENT>
class FourierDecomposedHelmholtzProblem< ELEMENT >

Problem class.

Definition at line 383 of file sphere_scattering.cc.

Constructor & Destructor Documentation

template<class ELEMENT >
FourierDecomposedHelmholtzProblem< ELEMENT >::FourierDecomposedHelmholtzProblem ( )

Constructor.

Constructor for Fourier-decomposed Helmholtz problem.

Definition at line 441 of file sphere_scattering.cc.

References ProblemParameters::El_multiplier, ProblemParameters::K_squared, ProblemParameters::N_fourier, and ProblemParameters::Nterms_for_DtN.

template<class ELEMENT>
FourierDecomposedHelmholtzProblem< ELEMENT >::~FourierDecomposedHelmholtzProblem ( )
inline

Destructor (empty)

Definition at line 392 of file sphere_scattering.cc.

Constructor.

template<class ELEMENT>
FourierDecomposedHelmholtzProblem< ELEMENT >::~FourierDecomposedHelmholtzProblem ( )
inline

Destructor (empty)

Definition at line 337 of file unstructured_sphere_scattering.cc.

Member Function Documentation

template<class ELEMENT >
void FourierDecomposedHelmholtzProblem< ELEMENT >::actions_after_adapt ( )

Actions after adapt: Rebuild the mesh of prescribed flux elements.

Actions after adapt: Rebuild the face element meshes.

Definition at line 441 of file unstructured_sphere_scattering.cc.

References ProblemParameters::K_squared, and ProblemParameters::N_fourier.

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

Update the problem after solve (empty)

Definition at line 343 of file unstructured_sphere_scattering.cc.

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

Update the problem after solve (empty)

Definition at line 398 of file sphere_scattering.cc.

template<class ELEMENT >
void FourierDecomposedHelmholtzProblem< ELEMENT >::actions_before_adapt ( )

Actions before adapt: Wipe the mesh of prescribed flux elements.

Actions before adapt: Wipe the mesh of face elements.

Definition at line 422 of file unstructured_sphere_scattering.cc.

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

Recompute gamma integral before checking Newton residuals.

Definition at line 350 of file unstructured_sphere_scattering.cc.

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

Recompute gamma integral before checking Newton residuals.

Definition at line 405 of file sphere_scattering.cc.

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

Update the problem specs before solve (empty)

Definition at line 340 of file unstructured_sphere_scattering.cc.

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

Update the problem specs before solve (empty)

Definition at line 395 of file sphere_scattering.cc.

template<class ELEMENT>
void FourierDecomposedHelmholtzProblem< ELEMENT >::check_gamma ( DocInfo &  doc_info)

Check gamma computation.

template<class ELEMENT >
void FourierDecomposedHelmholtzProblem< ELEMENT >::check_gamma ( DocInfo &  doc_info)

Check gamma computation.

Check gamma computation: $ \gamma = -du/dn $.

Definition at line 509 of file sphere_scattering.cc.

References ProblemParameters::exact_minus_dudr().

template<class ELEMENT>
void FourierDecomposedHelmholtzProblem< ELEMENT >::create_flux_elements_on_inner_boundary ( )
private

Create flux elements on inner boundary.

template<class ELEMENT >
void FourierDecomposedHelmholtzProblem< ELEMENT >::create_flux_elements_on_inner_boundary ( )
private

Create flux elements on inner boundary.

Definition at line 701 of file sphere_scattering.cc.

References ProblemParameters::exact_minus_dudr().

template<class ELEMENT>
void FourierDecomposedHelmholtzProblem< ELEMENT >::create_outer_bc_elements ( )
private

Create BC elements on outer boundary.

template<class ELEMENT >
void FourierDecomposedHelmholtzProblem< ELEMENT >::create_outer_bc_elements ( )
private

Create BC elements on outer boundary.

Definition at line 662 of file sphere_scattering.cc.

template<class ELEMENT>
void FourierDecomposedHelmholtzProblem< ELEMENT >::delete_face_elements ( Mesh *const &  boundary_mesh_pt)
inlineprivate

Delete boundary face elements and wipe the surface mesh.

Definition at line 377 of file unstructured_sphere_scattering.cc.

template<class ELEMENT>
void FourierDecomposedHelmholtzProblem< ELEMENT >::doc_solution ( DocInfo &  doc_info)

Doc the solution. DocInfo object stores flags/labels for where the output gets written to.

template<class ELEMENT >
void FourierDecomposedHelmholtzProblem< ELEMENT >::doc_solution ( DocInfo &  doc_info)

Doc the solution. DocInfo object stores flags/labels for where the output gets written to.

Doc the solution: doc_info contains labels/output directory etc.

Definition at line 578 of file sphere_scattering.cc.

References ProblemParameters::get_exact_u(), ProblemParameters::K_squared, and ProblemParameters::N_fourier.

Referenced by main().

Member Data Documentation

template<class ELEMENT>
RefineableTriangleMesh<ELEMENT>* FourierDecomposedHelmholtzProblem< ELEMENT >::Bulk_mesh_pt
private

Pointer to the "bulk" mesh.

Definition at line 395 of file unstructured_sphere_scattering.cc.

template<class ELEMENT>
TriangleMesh<ELEMENT>* FourierDecomposedHelmholtzProblem< ELEMENT >::Bulk_mesh_pt
private

Pointer to the "bulk" mesh.

Definition at line 400 of file unstructured_sphere_scattering.cc.

template<class ELEMENT>
AnnularQuadMesh<ELEMENT>* FourierDecomposedHelmholtzProblem< ELEMENT >::Bulk_mesh_pt
private

Pointer to bulk mesh.

Definition at line 422 of file sphere_scattering.cc.

template<class ELEMENT>
Mesh * FourierDecomposedHelmholtzProblem< ELEMENT >::Helmholtz_inner_boundary_mesh_pt
private

Mesh of face elements that apply the prescribed flux on the inner boundary.

on the inner boundary

Definition at line 430 of file sphere_scattering.cc.

template<class ELEMENT>
FourierDecomposedHelmholtzDtNMesh< ELEMENT > * FourierDecomposedHelmholtzProblem< ELEMENT >::Helmholtz_outer_boundary_mesh_pt
private

Pointer to mesh containing the DtN boundary condition elements.

Definition at line 426 of file sphere_scattering.cc.

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

Trace file.

Definition at line 412 of file unstructured_sphere_scattering.cc.


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