KTH framework for Nek5000 toolboxes; testing version
0.0.1
|
Sponge/fringe for simple box mesh. More...
Files | |
file | spnb.f |
Sponge/fringe for simple box mesh. | |
Functions | |
subroutine | spnb_register () |
Register sponge box module. More... | |
subroutine | spnb_init (lvx, lvy, lvz) |
Initilise sponge box module. More... | |
logical function | spnb_is_initialised () |
Check if module was initialised. More... | |
subroutine | spnb_forcing (ffx, ffy, ffz, ix, iy, iz, ieg) |
Get sponge forcing. More... | |
Sponge/fringe for simple box mesh.
Set of routines to apply sponge (fringe in periodic domains) for simple box mesh. It calculates a volume forcing
with being non-negative sponge/fringe function, and being constant in time reference velocity field and current velocity field respectively. 1-dimensional sponge function is defined as
where:
In our implementation each dimension is treated separately and the final 3-dimensional function takes a maximum value of its 1-dimensional components. and can be set to zero.
Varaible | Type | Runtime parameter | Default value | Description |
---|---|---|---|---|
spnb_str | real | _spnb:strenght | 0.0 | sponge strength |
spnb_wl(1) | real | _spnb:widthlx | 0.0 | sponge left section width; dimension X |
spnb_wl(2) | real | _spnb:widthly | 0.0 | sponge left section width; dimension Y |
spnb_wl(3) | real | _spnb:widthlz | 0.0 | sponge left section width; dimension Z |
spnb_wr(1) | real | _spnb:widthrx | 0.0 | sponge right section width; dimension X |
spnb_wr(2) | real | _spnb:widthry | 0.0 | sponge right section width; dimension Y |
spnb_wr(3) | real | _spnb:widthrz | 0.0 | sponge right section width; dimension Z |
spnb_dl(1) | real | _spnb:droplx | 0.0 | sponge left drop/rise section width; dimension X |
spnb_dl(2) | real | _spnb:droply | 0.0 | sponge left drop/rise section width; dimension Y |
spnb_dl(3) | real | _spnb:droplz | 0.0 | sponge left drop/rise section width; dimension Z |
spnb_dr(1) | real | _spnb:droprx | 0.0 | sponge right drop/rise section width; dimension X |
spnb_dr(2) | real | _spnb:dropry | 0.0 | sponge right drop/rise section width; dimension Y |
spnb_dr(3) | real | _spnb:droprz | 0.0 | sponge right drop/rise section width; dimension Z |
subroutine spnb_forcing | ( | real | ffx, |
real | ffy, | ||
real | ffz, | ||
integer | ix, | ||
integer | iy, | ||
integer | iz, | ||
integer | ieg | ||
) |
subroutine spnb_init | ( | real, dimension(lx1*ly1*lz1*lelv) | lvx, |
real, dimension(lx1*ly1*lz1*lelv) | lvy, | ||
real, dimension(lx1*ly1*lz1*lelv) | lvz | ||
) |
Initilise sponge box module.
[in] | lvx,lvy,lvz | velocity field to be stored as reference field |
Definition at line 122 of file spnb.f.
References copy(), mntr_abort(), mntr_log(), mntr_tmr_add(), mntr_warn(), outpost2(), rprm_rp_get(), and rzero().
logical function spnb_is_initialised |
subroutine spnb_register |
Register sponge box module.
Definition at line 10 of file spnb.f.
References mntr_abort(), mntr_mod_is_name_reg(), mntr_mod_reg(), mntr_tmr_add(), mntr_tmr_is_name_reg(), mntr_tmr_reg(), mntr_warn(), rprm_rp_reg(), rprm_sec_reg(), and rprm_sec_set_act().