ETS  \$Id: Doxyfile 2162 2020-02-26 14:16:09Z g2dpc $
 All Classes Files Functions Variables Pages
mod_turb.f90
Go to the documentation of this file.
1 MODULE mod_turb
2 
3  USE itm_types
4  USE euitm_schemas
5 
6  IMPLICIT NONE
7 
9 !. PUBLIC :: fill_turb
10 
11  CONTAINS
12 
13 !--------------------------------------------------------------------------
14  SUBROUTINE turb_constructor(coretransp, nrho0, nrho, nion)
15 !--------------------------------------------------------------------------
16 
17  IMPLICIT NONE
18 
19  type (type_coretransp) :: coretransp
20  integer(ITM_I4) :: nrho0, nrho, nion
21 
22 !... allocate transport structure
23 
24  ALLOCATE(coretransp%values(1)%rho_tor(nrho0:nrho))
25  ALLOCATE(coretransp%values(1)%rho_tor_norm(nrho0:nrho))
26  ALLOCATE(coretransp%values(1)%ne_transp%flux(nrho0:nrho))
27  ALLOCATE(coretransp%values(1)%te_transp%flux(nrho0:nrho))
28  ALLOCATE(coretransp%values(1)%ni_transp%flux(nrho0:nrho,nion))
29  ALLOCATE(coretransp%values(1)%ti_transp%flux(nrho0:nrho,nion))
30  ALLOCATE(coretransp%values(1)%ne_transp%diff_eff(nrho0:nrho,3))
31  ALLOCATE(coretransp%values(1)%te_transp%diff_eff(nrho0:nrho))
32  ALLOCATE(coretransp%values(1)%ni_transp%diff_eff(nrho0:nrho,nion,3))
33  ALLOCATE(coretransp%values(1)%ti_transp%diff_eff(nrho0:nrho,nion))
34  ALLOCATE(coretransp%values(1)%ne_transp%vconv_eff(nrho0:nrho,3))
35  ALLOCATE(coretransp%values(1)%te_transp%vconv_eff(nrho0:nrho))
36  ALLOCATE(coretransp%values(1)%ni_transp%vconv_eff(nrho0:nrho,nion,3))
37  ALLOCATE(coretransp%values(1)%ti_transp%vconv_eff(nrho0:nrho,nion))
38 
39  coretransp%values(1)%ne_transp%flux=0._r8
40  coretransp%values(1)%te_transp%flux=0._r8
41  coretransp%values(1)%ni_transp%flux=0._r8
42  coretransp%values(1)%ti_transp%flux=0._r8
43  coretransp%values(1)%ne_transp%diff_eff=0._r8
44  coretransp%values(1)%te_transp%diff_eff=0._r8
45  coretransp%values(1)%ni_transp%diff_eff=0._r8
46  coretransp%values(1)%ti_transp%diff_eff=0._r8
47  coretransp%values(1)%ne_transp%vconv_eff=0._r8
48  coretransp%values(1)%te_transp%vconv_eff=0._r8
49  coretransp%values(1)%ni_transp%vconv_eff=0._r8
50  coretransp%values(1)%ti_transp%vconv_eff=0._r8
51 
52  END SUBROUTINE turb_constructor
53 
54 !--------------------------------------------------------------------------
55  SUBROUTINE turb_destructor(coretransp)
56 !--------------------------------------------------------------------------
57 
58  IMPLICIT NONE
59 
60  TYPE (type_coretransp) :: coretransp
61 
62 !... deallocate transport structure
63 
64  DEALLOCATE(coretransp%values(1)%rho_tor)
65  DEALLOCATE(coretransp%values(1)%rho_tor_norm)
66  DEALLOCATE(coretransp%values(1)%ne_transp%flux)
67  DEALLOCATE(coretransp%values(1)%te_transp%flux)
68  DEALLOCATE(coretransp%values(1)%ni_transp%flux)
69  DEALLOCATE(coretransp%values(1)%ti_transp%flux)
70  DEALLOCATE(coretransp%values(1)%ne_transp%diff_eff)
71  DEALLOCATE(coretransp%values(1)%te_transp%diff_eff)
72  DEALLOCATE(coretransp%values(1)%ni_transp%diff_eff)
73  DEALLOCATE(coretransp%values(1)%ti_transp%diff_eff)
74  DEALLOCATE(coretransp%values(1)%ne_transp%vconv_eff)
75  DEALLOCATE(coretransp%values(1)%te_transp%vconv_eff)
76  DEALLOCATE(coretransp%values(1)%ni_transp%vconv_eff)
77  DEALLOCATE(coretransp%values(1)%ti_transp%vconv_eff)
78 
79  END SUBROUTINE turb_destructor
80 
81 !-----------------------------------------------------------------------------
82 ! subroutine fill_turb(a, xaxis, nr, coretransp)
83 !-----------------------------------------------------------------------------
84 ! This subroutine fills the coretransp CPO through calls
85 ! of the appropriate subroutines
86 ! This subroutine shall be callable at any point inside the turb code
87 ! or module after the fluxes are known
88 !-----------------------------------------------------------------------------
89 
90 ! end subroutine fill_turb
91 
92 END MODULE mod_turb
subroutine, public turb_constructor(coretransp, nrho0, nrho, nion)
Definition: mod_turb.f90:14
subroutine, public turb_destructor(coretransp)
Definition: mod_turb.f90:55