Neko 1.99.3
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
pde_filter::pde_filter_t Type Referenceabstract

A PDE based filter mapping $\rho \mapsto \tilde{\rho}$, see Lazarov & O. Sigmund 2010, by solving an equation of the form $\f -r^2 \nabla^2 \tilde{\rho} + \tilde{\rho} = \rho . More...

Inheritance diagram for pde_filter::pde_filter_t:
Collaboration diagram for pde_filter::pde_filter_t:

Public Member Functions

procedure, pass(thisinit (this, json, coef)
 Constructor from json.
 
procedure, pass(thisinit_from_components (this, coef)
 Actual constructor.
 
procedure, pass(thisfree (this)
 Destructor.
 
procedure, pass(thisapply (this, f_out, f_in)
 Apply the filter.
 
procedure, pass(thisinit_base (this, json, coef)
 Constructor for the filter_t class.
 
procedure, pass(thisfree_base (this)
 Destructor for the filter_t (base) class.
 
procedure(filter_init), deferred, pass init (this, json, coef)
 The common constructor using a JSON dictionary.
 
procedure(filter_free), deferred, pass free (this)
 Destructor.
 
procedure(filter_apply), deferred, pass apply (this, f_out, f_in)
 The main function to be executed during the run.
 

Public Attributes

class(ax_t), allocatable ax
 Ax.
 
type(ksp_monitor_t), dimension(1) ksp_results
 Solver results monitors ( filter )
 
class(ksp_t), allocatable ksp_filt
 Krylov solver for the filter.
 
class(pc_t), allocatable pc_filt
 Filter Preconditioner.
 
type(bc_list_tbclst_filt
 Filter boundary conditions (they will all be Neumann, so empty)
 
real(kind=rp) r
 filter radius
 
real(kind=rp) abstol_filt
 tolerance for PDE filter
 
integer ksp_max_iter
 max iterations for PDE filter
 
character(len=:), allocatable ksp_solver
 method for solving PDE
 
character(len=:), allocatable precon_type_filt
 
integer ksp_n
 
integer n
 
integer i
 
type(coef_t), pointer coef => null()
 Coefficients for the SEM.
 

Detailed Description

Definition at line 72 of file PDE_filter.f90.

Member Function/Subroutine Documentation

◆ apply() [1/2]

procedure(filter_apply), deferred, pass filter::filter_t::apply ( class(filter_t), intent(inout this,
type(field_t), intent(inout f_out,
type(field_t), intent(in f_in 
)
pure virtualinherited

Definition at line 62 of file filter.f90.

◆ apply() [2/2]

procedure, pass(this) pde_filter::pde_filter_t::apply ( class(pde_filter_t), intent(inout this,
type(field_t), intent(inout f_out,
type(field_t), intent(in f_in 
)
Parameters
F_outfiltered field
F_inunfiltered field

Definition at line 109 of file PDE_filter.f90.

◆ free() [1/2]

procedure(filter_free), deferred, pass filter::filter_t::free ( class(filter_t), intent(inout this)
pure virtualinherited

Definition at line 60 of file filter.f90.

◆ free() [2/2]

procedure, pass(this) pde_filter::pde_filter_t::free ( class(pde_filter_t), intent(inout this)

Definition at line 107 of file PDE_filter.f90.

◆ free_base()

procedure, pass(this) filter::filter_t::free_base ( class(filter_t), intent(inout this)
inherited

Definition at line 56 of file filter.f90.

◆ init() [1/2]

procedure(filter_init), deferred, pass filter::filter_t::init ( class(filter_t), intent(inout this,
type(json_file), intent(inout json,
type(coef_t), intent(in coef 
)
pure virtualinherited

Definition at line 58 of file filter.f90.

◆ init() [2/2]

procedure, pass(this) pde_filter::pde_filter_t::init ( class(pde_filter_t), intent(inout this,
type(json_file), intent(inout json,
type(coef_t), intent(in coef 
)

Definition at line 102 of file PDE_filter.f90.

◆ init_base()

procedure, pass(this) filter::filter_t::init_base ( class(filter_t), intent(inout this,
type(json_file), intent(inout json,
type(coef_t), intent(in), target  coef 
)
inherited
Parameters
objectThe object to be allocated.
type_nameThe name of the filter.
jsonA dictionary with parameters.
coefSEM coefficients. Constructor for the filter_t (base) class.

Definition at line 54 of file filter.f90.

◆ init_from_components()

procedure, pass(this) pde_filter::pde_filter_t::init_from_components ( class(pde_filter_t), intent(inout this,
type(coef_t), intent(in coef 
)

Definition at line 104 of file PDE_filter.f90.

Member Data Documentation

◆ abstol_filt

real(kind=rp) pde_filter::pde_filter_t::abstol_filt

Definition at line 89 of file PDE_filter.f90.

◆ ax

class(ax_t), allocatable pde_filter::pde_filter_t::ax

Definition at line 75 of file PDE_filter.f90.

◆ bclst_filt

type(bc_list_t) pde_filter::pde_filter_t::bclst_filt

Definition at line 83 of file PDE_filter.f90.

◆ coef

type(coef_t), pointer filter::filter_t::coef => null()
inherited

Definition at line 50 of file filter.f90.

◆ i

integer pde_filter::pde_filter_t::i

Definition at line 96 of file PDE_filter.f90.

◆ ksp_filt

class(ksp_t), allocatable pde_filter::pde_filter_t::ksp_filt

Definition at line 79 of file PDE_filter.f90.

◆ ksp_max_iter

integer pde_filter::pde_filter_t::ksp_max_iter

Definition at line 91 of file PDE_filter.f90.

◆ ksp_n

integer pde_filter::pde_filter_t::ksp_n

Definition at line 96 of file PDE_filter.f90.

◆ ksp_results

type(ksp_monitor_t), dimension(1) pde_filter::pde_filter_t::ksp_results

Definition at line 77 of file PDE_filter.f90.

◆ ksp_solver

character(len=:), allocatable pde_filter::pde_filter_t::ksp_solver

Definition at line 93 of file PDE_filter.f90.

◆ n

integer pde_filter::pde_filter_t::n

Definition at line 96 of file PDE_filter.f90.

◆ pc_filt

class(pc_t), allocatable pde_filter::pde_filter_t::pc_filt

Definition at line 81 of file PDE_filter.f90.

◆ precon_type_filt

character(len=:), allocatable pde_filter::pde_filter_t::precon_type_filt

Definition at line 95 of file PDE_filter.f90.

◆ r

real(kind=rp) pde_filter::pde_filter_t::r

Definition at line 87 of file PDE_filter.f90.


The documentation for this type was generated from the following file: