https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_sampling_dram.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 2 4 50.0 %
Date: 2024-04-08 03:18:57 Functions: 0 68 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
       2             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
       3             : !!!!                                                                                                                            !!!!
       4             : !!!!    ParaMonte: Parallel Monte Carlo and Machine Learning Library.                                                           !!!!
       5             : !!!!                                                                                                                            !!!!
       6             : !!!!    Copyright (C) 2012-present, The Computational Data Science Lab                                                          !!!!
       7             : !!!!                                                                                                                            !!!!
       8             : !!!!    This file is part of the ParaMonte library.                                                                             !!!!
       9             : !!!!                                                                                                                            !!!!
      10             : !!!!    LICENSE                                                                                                                 !!!!
      11             : !!!!                                                                                                                            !!!!
      12             : !!!!       https://github.com/cdslaborg/paramonte/blob/main/LICENSE.md                                                          !!!!
      13             : !!!!                                                                                                                            !!!!
      14             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      15             : !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      16             : 
      17             : !>  \brief
      18             : !>  This module contains the **internal** classes and procedures for setting up the attributes of the ParaMonte library DRAM-MCMC samplers.<br>
      19             : !>
      20             : !>  \details
      21             : !>  For more information, see the description of the attributes within the bodies of their constructors in this module.<br>
      22             : !>  Alternatively, a description of these simulation specifications is always printed out the in `_report.txt` files of each ParaMonte DRAM-MCMC simulation.
      23             : !>
      24             : !>  \note
      25             : !>  The contents of this module are not meant to be used by the end users of the ParaMonte library.<br>
      26             : !>
      27             : !>  \devnote
      28             : !>  The madness seen here with module-level generics is due to the lack of support for PDTs in \gfortran{13.1} and older versions.<br>
      29             : !>
      30             : !>  \finmain
      31             : !>
      32             : !>  \author
      33             : !>  \AmirShahmoradi, Monday 00:01 AM, January 1, 2018, Institute for Computational Engineering and Sciences, University of Texas Austin
      34             : 
      35             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      36             : 
      37             : module pm_sampling_dram_RK5
      38             : #if RK5_ENABLED
      39             :     use pm_kind, only: RKC => RK5
      40             : #define pm_sampling_scio pm_sampling_scio_RK5
      41             : #define pm_sampling_mcmc pm_sampling_mcmc_RK5
      42             : #include "pm_sampling_dram.imp.F90"
      43             : #undef pm_sampling_mcmc
      44             : #undef pm_sampling_scio
      45             : #else
      46             :     use pm_kind, only: RKC => RK
      47             : #endif
      48             : end module
      49             : 
      50             : module pm_sampling_dram_RK4
      51             : #if RK4_ENABLED
      52             :     use pm_kind, only: RKC => RK4
      53             : #define pm_sampling_scio pm_sampling_scio_RK4
      54             : #define pm_sampling_mcmc pm_sampling_mcmc_RK4
      55             : #include "pm_sampling_dram.imp.F90"
      56             : #undef pm_sampling_mcmc
      57             : #undef pm_sampling_scio
      58             : #else
      59             :     use pm_kind, only: RKC => RK
      60             : #endif
      61           0 : end module
      62             : 
      63             : module pm_sampling_dram_RK3
      64             : #if RK3_ENABLED
      65             :     use pm_kind, only: RKC => RK3
      66             : #define pm_sampling_scio pm_sampling_scio_RK3
      67             : #define pm_sampling_mcmc pm_sampling_mcmc_RK3
      68             : #include "pm_sampling_dram.imp.F90"
      69             : #undef pm_sampling_mcmc
      70             : #undef pm_sampling_scio
      71             : #else
      72             :     use pm_kind, only: RKC => RK
      73             : #endif
      74           0 : end module
      75             : 
      76             : module pm_sampling_dram_RK2
      77             : #if RK2_ENABLED
      78             :     use pm_kind, only: RKC => RK2
      79             : #define pm_sampling_scio pm_sampling_scio_RK2
      80             : #define pm_sampling_mcmc pm_sampling_mcmc_RK2
      81             : #include "pm_sampling_dram.imp.F90"
      82             : #undef pm_sampling_mcmc
      83             : #undef pm_sampling_scio
      84             : #else
      85             :     use pm_kind, only: RKC => RK
      86             : #endif
      87          12 : end module
      88             : 
      89             : module pm_sampling_dram_RK1
      90             : #if RK1_ENABLED
      91             :     use pm_kind, only: RKC => RK1
      92             : #define pm_sampling_scio pm_sampling_scio_RK1
      93             : #define pm_sampling_mcmc pm_sampling_mcmc_RK1
      94             : #include "pm_sampling_dram.imp.F90"
      95             : #undef pm_sampling_mcmc
      96             : #undef pm_sampling_scio
      97             : #else
      98             :     use pm_kind, only: RKC => RK
      99             : #endif
     100           1 : end module

ParaMonte: Parallel Monte Carlo and Machine Learning Library 
The Computational Data Science Lab
© Copyright 2012 - 2024