get_Hollmann_distribution_3D Subroutine

public subroutine get_Hollmann_distribution_3D(params, spp, F)

Arguments

Type IntentOptional AttributesName
type(KORC_PARAMS), intent(in) :: params
type(SPECIES), intent(inout) :: spp
type(FIELDS), intent(in) :: F

Calls

proc~~get_hollmann_distribution_3d~~CallsGraph proc~get_hollmann_distribution_3d get_Hollmann_distribution_3D proc~save_hollmann_params save_Hollmann_params proc~get_hollmann_distribution_3d->proc~save_hollmann_params proc~sample_hollmann_distribution_3d sample_Hollmann_distribution_3D proc~get_hollmann_distribution_3d->proc~sample_hollmann_distribution_3d proc~initialize_hollmann_params initialize_Hollmann_params proc~get_hollmann_distribution_3d->proc~initialize_hollmann_params proc~normalize_hollmann_params normalize_Hollmann_params proc~get_hollmann_distribution_3d->proc~normalize_hollmann_params proc~korc_abort korc_abort proc~get_hollmann_distribution_3d->proc~korc_abort h5fclose_f h5fclose_f proc~save_hollmann_params->h5fclose_f interface~save_to_hdf5 save_to_hdf5 proc~save_hollmann_params->interface~save_to_hdf5 h5gclose_f h5gclose_f proc~save_hollmann_params->h5gclose_f proc~get_random_u get_random_U proc~sample_hollmann_distribution_3d->proc~get_random_u proc~deg2rad~5 deg2rad proc~sample_hollmann_distribution_3d->proc~deg2rad~5 mpi_barrier mpi_barrier proc~sample_hollmann_distribution_3d->mpi_barrier proc~indicator_exp indicator_exp proc~sample_hollmann_distribution_3d->proc~indicator_exp proc~init_random_seed init_random_seed proc~sample_hollmann_distribution_3d->proc~init_random_seed mpi_scatter mpi_scatter proc~sample_hollmann_distribution_3d->mpi_scatter proc~get_random_n get_random_N proc~sample_hollmann_distribution_3d->proc~get_random_n proc~fre_h_3d fRE_H_3D proc~sample_hollmann_distribution_3d->proc~fre_h_3d proc~psi_rot_exp PSI_ROT_exp proc~sample_hollmann_distribution_3d->proc~psi_rot_exp proc~initialize_hollmann_interpolant initialize_Hollmann_interpolant proc~initialize_hollmann_params->proc~initialize_hollmann_interpolant proc~load_data_from_hdf5 load_data_from_hdf5 proc~initialize_hollmann_params->proc~load_data_from_hdf5 mpi_abort mpi_abort proc~korc_abort->mpi_abort interface~random_get_number_u random_get_number_U proc~get_random_u->interface~random_get_number_u ezspline_error ezspline_error proc~initialize_hollmann_interpolant->ezspline_error ezspline_init ezspline_init proc~initialize_hollmann_interpolant->ezspline_init ezspline_setup ezspline_setup proc~initialize_hollmann_interpolant->ezspline_setup proc~i2save_to_hdf5 i2save_to_hdf5 interface~save_to_hdf5->proc~i2save_to_hdf5 proc~i1save_to_hdf5 i1save_to_hdf5 interface~save_to_hdf5->proc~i1save_to_hdf5 proc~i4save_to_hdf5 i4save_to_hdf5 interface~save_to_hdf5->proc~i4save_to_hdf5 proc~i8save_to_hdf5 i8save_to_hdf5 interface~save_to_hdf5->proc~i8save_to_hdf5 proc~rsave_to_hdf5 rsave_to_hdf5 interface~save_to_hdf5->proc~rsave_to_hdf5 interface~random_get_number_n random_get_number_N proc~get_random_n->interface~random_get_number_n proc~fre_h_3d->proc~deg2rad~5 proc~load_data_from_hdf5->proc~korc_abort proc~load_data_from_hdf5->h5fclose_f interface~load_array_from_hdf5 load_array_from_hdf5 proc~load_data_from_hdf5->interface~load_array_from_hdf5 h5fopen_f h5fopen_f proc~load_data_from_hdf5->h5fopen_f interface~load_from_hdf5 load_from_hdf5 proc~load_data_from_hdf5->interface~load_from_hdf5 h5tset_size_f h5tset_size_f proc~i2save_to_hdf5->h5tset_size_f h5dclose_f h5dclose_f proc~i2save_to_hdf5->h5dclose_f h5aclose_f h5aclose_f proc~i2save_to_hdf5->h5aclose_f h5tcopy_f h5tcopy_f proc~i2save_to_hdf5->h5tcopy_f h5screate_simple_f h5screate_simple_f proc~i2save_to_hdf5->h5screate_simple_f h5awrite_f h5awrite_f proc~i2save_to_hdf5->h5awrite_f h5sclose_f h5sclose_f proc~i2save_to_hdf5->h5sclose_f h5acreate_f h5acreate_f proc~i2save_to_hdf5->h5acreate_f proc~i1save_to_hdf5->h5tset_size_f proc~i1save_to_hdf5->h5dclose_f proc~i1save_to_hdf5->h5aclose_f proc~i1save_to_hdf5->h5tcopy_f proc~i1save_to_hdf5->h5screate_simple_f proc~i1save_to_hdf5->h5awrite_f proc~i1save_to_hdf5->h5sclose_f proc~i1save_to_hdf5->h5acreate_f proc~i4save_to_hdf5->h5tset_size_f proc~i4save_to_hdf5->h5dclose_f proc~i4save_to_hdf5->h5aclose_f proc~i4save_to_hdf5->h5tcopy_f proc~i4save_to_hdf5->h5screate_simple_f proc~i4save_to_hdf5->h5awrite_f proc~i4save_to_hdf5->h5sclose_f proc~i4save_to_hdf5->h5acreate_f proc~rload_1d_array_from_hdf5 rload_1d_array_from_hdf5 interface~load_array_from_hdf5->proc~rload_1d_array_from_hdf5 proc~rload_2d_array_from_hdf5 rload_2d_array_from_hdf5 interface~load_array_from_hdf5->proc~rload_2d_array_from_hdf5 proc~rload_3d_array_from_hdf5 rload_3d_array_from_hdf5 interface~load_array_from_hdf5->proc~rload_3d_array_from_hdf5 proc~i8save_to_hdf5->h5tset_size_f proc~i8save_to_hdf5->h5dclose_f proc~i8save_to_hdf5->h5aclose_f proc~i8save_to_hdf5->h5tcopy_f proc~i8save_to_hdf5->h5screate_simple_f proc~i8save_to_hdf5->h5awrite_f proc~i8save_to_hdf5->h5sclose_f proc~i8save_to_hdf5->h5acreate_f proc~rsave_to_hdf5->h5tset_size_f proc~rsave_to_hdf5->h5dclose_f proc~rsave_to_hdf5->h5aclose_f proc~rsave_to_hdf5->h5tcopy_f proc~rsave_to_hdf5->h5screate_simple_f proc~rsave_to_hdf5->h5awrite_f h5dwrite_f h5dwrite_f proc~rsave_to_hdf5->h5dwrite_f proc~rsave_to_hdf5->h5sclose_f proc~rsave_to_hdf5->h5acreate_f proc~iload_from_hdf5 iload_from_hdf5 interface~load_from_hdf5->proc~iload_from_hdf5 proc~rload_from_hdf5 rload_from_hdf5 interface~load_from_hdf5->proc~rload_from_hdf5 proc~iload_from_hdf5->proc~korc_abort proc~iload_from_hdf5->h5dclose_f h5dread_f h5dread_f proc~iload_from_hdf5->h5dread_f proc~rload_from_hdf5->proc~korc_abort proc~rload_from_hdf5->h5dclose_f proc~rload_from_hdf5->h5dread_f proc~rload_1d_array_from_hdf5->proc~korc_abort proc~rload_1d_array_from_hdf5->h5dclose_f proc~rload_1d_array_from_hdf5->h5dread_f proc~rload_2d_array_from_hdf5->proc~korc_abort proc~rload_2d_array_from_hdf5->h5dclose_f proc~rload_2d_array_from_hdf5->h5dread_f proc~rload_3d_array_from_hdf5->proc~korc_abort proc~rload_3d_array_from_hdf5->h5dclose_f proc~rload_3d_array_from_hdf5->h5dread_f

Contents


Source Code

  SUBROUTINE get_Hollmann_distribution_3D(params,spp,F)
    TYPE(FIELDS), INTENT(IN)                                   :: F
    TYPE(KORC_PARAMS), INTENT(IN) :: params
    TYPE(SPECIES),  INTENT(INOUT) :: spp
    INTEGER 				:: mpierr

    if (spp%ppp*params%mpi_params%nmpi.lt.10) then
       if(params%mpi_params%rank.eq.0) then
          write(6,*) 'num_samples need to be atleast 10 but is only: ', &
               spp%ppp*params%mpi_params%nmpi
       end if
       call korc_abort(12)
    end if
    
    call initialize_Hollmann_params(params)

    call save_Hollmann_params(params)

    call normalize_Hollmann_params(params)

    call sample_Hollmann_distribution_3D(params,spp,F)

  END SUBROUTINE get_Hollmann_distribution_3D