cosp_optics Module


Uses

  • module~~cosp_optics~~UsesGraph module~cosp_optics cosp_optics module~cosp_math_constants cosp_math_constants module~cosp_optics->module~cosp_math_constants module~cosp_phys_constants cosp_phys_constants module~cosp_optics->module~cosp_phys_constants module~cosp_kinds cosp_kinds module~cosp_optics->module~cosp_kinds module~mod_modis_sim mod_modis_sim module~cosp_optics->module~mod_modis_sim module~cosp_math_constants->module~cosp_kinds module~cosp_phys_constants->module~cosp_kinds module~mod_cosp_types~2 MOD_COSP_TYPES module~mod_modis_sim->module~mod_cosp_types~2 module~mod_cosp_utils MOD_COSP_UTILS module~mod_cosp_types~2->module~mod_cosp_utils module~radar_simulator_types radar_simulator_types module~mod_cosp_types~2->module~radar_simulator_types module~mod_cosp_constants~2 MOD_COSP_CONSTANTS module~mod_cosp_types~2->module~mod_cosp_constants~2 module~mod_cosp_utils->module~mod_cosp_constants~2

Used by

  • module~~cosp_optics~~UsedByGraph module~cosp_optics cosp_optics module~lmdz_cosp_subsample_and_optics_mod~2 LMDZ_COSP_SUBSAMPLE_AND_OPTICS_MOD module~lmdz_cosp_subsample_and_optics_mod~2->module~cosp_optics module~lmdz_cosp_subsample_and_optics_mod LMDZ_COSP_SUBSAMPLE_AND_OPTICS_MOD module~lmdz_cosp_subsample_and_optics_mod->module~cosp_optics proc~lmdz_cosp_interface lmdz_cosp_interface proc~lmdz_cosp_interface->module~lmdz_cosp_subsample_and_optics_mod~2 proc~lmdz_cosp_interface~2 lmdz_cosp_interface proc~lmdz_cosp_interface~2->module~lmdz_cosp_subsample_and_optics_mod~2

Contents


Variables

Type Visibility Attributes Name Initial
real(kind=wp), public, parameter :: ice_density = 0.93_wp

Interfaces

public interface cosp_simulator_optics

  • public subroutine cosp_simulator_optics2D(dim1, dim2, dim3, flag, varIN1, varIN2, varOUT)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: dim1
    integer, intent(in) :: dim2
    integer, intent(in) :: dim3
    real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: flag
    real(kind=wp), intent(in), dimension(dim1, dim3) :: varIN1
    real(kind=wp), intent(in), dimension(dim1, dim3) :: varIN2
    real(kind=wp), intent(out), dimension(dim1,dim2,dim3) :: varOUT
  • public subroutine cosp_simulator_optics3D(dim1, dim2, dim3, flag, varIN1, varIN2, varOUT)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: dim1
    integer, intent(in) :: dim2
    integer, intent(in) :: dim3
    real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: flag
    real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: varIN1
    real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: varIN2
    real(kind=wp), intent(out), dimension(dim1,dim2,dim3) :: varOUT

Subroutines

public subroutine cosp_simulator_optics2D(dim1, dim2, dim3, flag, varIN1, varIN2, varOUT)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: dim1
integer, intent(in) :: dim2
integer, intent(in) :: dim3
real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: flag
real(kind=wp), intent(in), dimension(dim1, dim3) :: varIN1
real(kind=wp), intent(in), dimension(dim1, dim3) :: varIN2
real(kind=wp), intent(out), dimension(dim1,dim2,dim3) :: varOUT

public subroutine cosp_simulator_optics3D(dim1, dim2, dim3, flag, varIN1, varIN2, varOUT)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: dim1
integer, intent(in) :: dim2
integer, intent(in) :: dim3
real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: flag
real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: varIN1
real(kind=wp), intent(in), dimension(dim1,dim2,dim3) :: varIN2
real(kind=wp), intent(out), dimension(dim1,dim2,dim3) :: varOUT

public subroutine MODIS_OPTICS_PARTITION(npoints, nlev, ncolumns, cloudWater, cloudIce, waterSize, iceSize, tau, tauL, tauI)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: npoints
integer, intent(in) :: nlev
integer, intent(in) :: ncolumns
real(kind=wp), intent(in), dimension(npoints,nlev,ncolumns) :: cloudWater
real(kind=wp), intent(in), dimension(npoints,nlev,ncolumns) :: cloudIce
real(kind=wp), intent(in), dimension(npoints,nlev,ncolumns) :: waterSize
real(kind=wp), intent(in), dimension(npoints,nlev,ncolumns) :: iceSize
real(kind=wp), intent(in), dimension(npoints,nlev,ncolumns) :: tau
real(kind=wp), intent(out), dimension(npoints,nlev,ncolumns) :: tauL
real(kind=wp), intent(out), dimension(npoints,nlev,ncolumns) :: tauI

public subroutine modis_optics(nPoints, nLevels, nSubCols, tauLIQ, sizeLIQ, tauICE, sizeICE, fracLIQ, g, w0)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nPoints
integer, intent(in) :: nLevels
integer, intent(in) :: nSubCols
real(kind=wp), intent(in), dimension(nPoints,nSubCols,nLevels) :: tauLIQ
real(kind=wp), intent(in), dimension(nPoints,nSubCols,nLevels) :: sizeLIQ
real(kind=wp), intent(in), dimension(nPoints,nSubCols,nLevels) :: tauICE
real(kind=wp), intent(in), dimension(nPoints,nSubCols,nLevels) :: sizeICE
real(kind=wp), intent(out), dimension(nPoints,nSubCols,nLevels) :: fracLIQ
real(kind=wp), intent(out), dimension(nPoints,nSubCols,nLevels) :: g
real(kind=wp), intent(out), dimension(nPoints,nSubCols,nLevels) :: w0

public subroutine lidar_optics(npoints, ncolumns, nlev, npart, ice_type, lidar_freq, lground, q_lsliq, q_lsice, q_cvliq, q_cvice, ls_radliq, ls_radice, cv_radliq, cv_radice, pres, presf, temp, beta_mol, betatot, tau_mol, tautot, tautot_S_liq, tautot_S_ice, betatot_ice, betatot_liq, tautot_ice, tautot_liq)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: npoints
integer, intent(in) :: ncolumns
integer, intent(in) :: nlev
integer, intent(in) :: npart
integer, intent(in) :: ice_type
integer, intent(in) :: lidar_freq
logical, intent(in) :: lground
real(kind=WP), intent(in), dimension(npoints,ncolumns,nlev) :: q_lsliq
real(kind=WP), intent(in), dimension(npoints,ncolumns,nlev) :: q_lsice
real(kind=WP), intent(in), dimension(npoints,ncolumns,nlev) :: q_cvliq
real(kind=WP), intent(in), dimension(npoints,ncolumns,nlev) :: q_cvice
real(kind=WP), intent(in), dimension(npoints,nlev) :: ls_radliq
real(kind=WP), intent(in), dimension(npoints,nlev) :: ls_radice
real(kind=WP), intent(in), dimension(npoints,nlev) :: cv_radliq
real(kind=WP), intent(in), dimension(npoints,nlev) :: cv_radice
real(kind=WP), intent(in), dimension(npoints,nlev) :: pres
real(kind=WP), intent(in), dimension(npoints,nlev+1) :: presf
real(kind=WP), intent(in), dimension(npoints,nlev) :: temp
real(kind=WP), intent(out), dimension(npoints,nlev) :: beta_mol
real(kind=WP), intent(out), dimension(npoints,ncolumns,nlev) :: betatot
real(kind=WP), intent(out), dimension(npoints,nlev) :: tau_mol
real(kind=WP), intent(out), dimension(npoints,ncolumns,nlev) :: tautot
real(kind=WP), intent(out), optional, dimension(npoints,ncolumns) :: tautot_S_liq
real(kind=WP), intent(out), optional, dimension(npoints,ncolumns) :: tautot_S_ice
real(kind=WP), intent(out), optional, dimension(npoints,ncolumns,nlev) :: betatot_ice
real(kind=WP), intent(out), optional, dimension(npoints,ncolumns,nlev) :: betatot_liq
real(kind=WP), intent(out), optional, dimension(npoints,ncolumns,nlev) :: tautot_ice
real(kind=WP), intent(out), optional, dimension(npoints,ncolumns,nlev) :: tautot_liq