(git:374b731)
Loading...
Searching...
No Matches
dct.F File Reference

Go to the source code of this file.

Data Types

type  dct::dct_type
 

Modules

module  dct
 the type I Discrete Cosine Transform (DCT-I)
 

Functions/Subroutines

subroutine, public dct::dct_type_init (pw_grid, neumann_directions, dct_env)
 Initializes a dct_type.
 
subroutine, public dct::dct_type_release (dct_env)
 Releases a dct_type.
 
subroutine, public dct::setup_dct_pw_grids (pw_grid, cell_hmat, neumann_directions, dct_pw_grid)
 sets up an extended pw_grid for Discrete Cosine Transform (DCT) calculations
 
subroutine, public dct::pw_expand (neumann_directions, recv_msgs_bnds, dests_expand, srcs_expand, flipg_stat, bounds_shftd, pw_in, pw_expanded)
 expands a pw_r3d_rs_type data to an evenly symmetric pw_r3d_rs_type data that is 8 times larger than the original one: the even symmetry for a 1D sequence of length n is defined as: 1 2 3 ... n-2 n-1 n --> 1 2 3 ... n-2 n-1 n n-1 n-2 ... 3 2 and is generalized to 3D by applying the same rule in all three directions
 
subroutine, public dct::pw_shrink (neumann_directions, dests_shrink, srcs_shrink, bounds_local_shftd, pw_in, pw_shrinked)
 shrinks an evenly symmetric pw_r3d_rs_type data to a pw_r3d_rs_type data that is 8 times smaller (the reverse procedure of pw_expand).
 

Variables

integer, parameter, public dct::neumannxyz = 111
 
integer, parameter, public dct::neumannxy = 110
 
integer, parameter, public dct::neumannxz = 101
 
integer, parameter, public dct::neumannyz = 011
 
integer, parameter, public dct::neumannx = 100
 
integer, parameter, public dct::neumanny = 010
 
integer, parameter, public dct::neumannz = 001