24 USE imas_constants_module
35 TYPE (ids_core_profiles
) :: coreprofiles
36 TYPE (ids_core_transport
) :: coretransport
43 INTEGER (IDS_INT) :: ntime
44 INTEGER (IDS_INT) :: nmod
45 INTEGER (IDS_INT) :: nrho, irho
49 REAL (IDS_REAL) :: clog
50 REAL (IDS_REAL),
ALLOCATABLE :: te(:)
51 REAL (IDS_REAL),
ALLOCATABLE :: ne(:)
52 REAL (IDS_REAL),
ALLOCATABLE :: tau_e(:)
53 REAL (IDS_REAL),
ALLOCATABLE :: sigma(:)
56 REAL (IDS_REAL),
PARAMETER :: me = imas_constants%me*1e3_ids_real
57 REAL (IDS_REAL),
PARAMETER :: e = imas_constants%ev*3e9_ids_real
58 REAL (IDS_REAL),
PARAMETER :: cn = 1.e-6_ids_real
59 REAL (IDS_REAL),
PARAMETER :: cs = 9.e9_ids_real
63 nrho =
SIZE(coreprofiles%profiles_1d(1)%grid%rho_tor_norm)
72 coretransport%ids_properties%comment(1) =
"Spitzer resistivity"
73 coretransport%ids_properties%source(1) =
"spitzer_actor"
74 coretransport%ids_properties%homogeneous_time = 1
76 coretransport%model(1)%identifier%name(1) =
"neoclassical"
77 coretransport%model(1)%identifier%index = 5
78 coretransport%model(1)%identifier%description(1) =
"Spitzer resistivity"
80 coretransport%model(1)%flux_multiplier = 0.0_ids_real
82 CALL ids_copy(coreprofiles%profiles_1d(1)%grid, coretransport%model(1)%profiles_1d(1)%grid_d)
83 CALL ids_copy(coreprofiles%profiles_1d(1)%grid, coretransport%model(1)%profiles_1d(1)%grid_v)
84 CALL ids_copy(coreprofiles%profiles_1d(1)%grid, coretransport%model(1)%profiles_1d(1)%grid_flux)
97 ALLOCATE (tau_e(nrho))
98 ALLOCATE (sigma(nrho))
99 rho_loop1:
DO irho =1,nrho
100 te(irho) = coreprofiles%profiles_1d(1)%electrons%temperature(irho)
101 ne(irho) = coreprofiles%profiles_1d(1)%electrons%density_thermal(irho)
106 IF(te(irho).GE.10) clog = 24.e0_ids_real - 1.15e0_ids_real*log10(ne(irho)*cn) + 2.30e0_ids_real*log10(te(irho))
107 IF(te(irho).LT.10) clog = 23.e0_ids_real - 1.15e0_ids_real*log10(ne(irho)*cn) + 3.45e0_ids_real*log10(te(irho))
111 tau_e(irho) = (sqrt(2.d0*me)*(te(irho))**1.5) / 1.8d-19 / (ne(irho)*cn) / clog
115 sigma(irho) = 1.96e0_ids_real * e**2 *ne(irho)*cn * tau_e(irho) /me /cs
119 coretransport%model(1)%profiles_1d(1)%conductivity_parallel = sigma
121 IF (
ALLOCATED(te))
DEALLOCATE (te)
122 IF (
ALLOCATED(ne))
DEALLOCATE (ne)
123 IF (
ALLOCATED(tau_e))
DEALLOCATE (tau_e)
124 IF (
ALLOCATED(sigma))
DEALLOCATE (sigma)
This module contains routines for allocation/deallocation if IDSs used in ETS.
subroutine allocate_coretransport_ids(NTIME, NMOD, NRHO, COMPOSITION, CORETRANSPORT)
This module contains routines for detecting plasma composition in IDSs.
The module defines derived types used by ETS6-CoreActor and subroutines to allocate and deallocate in...
subroutine spitzer_resistivity(COREPROFILES, CORETRANSPORT)