https://www.cdslab.org/paramonte/fortran/2
Current view: top level - main - pm_cosmicRate@routines.F90 (source / functions) Hit Total Coverage
Test: ParaMonte 2.0.0 :: Serial Fortran - Code Coverage Report Lines: 56 56 100.0 %
Date: 2024-04-08 03:18:57 Functions: 28 28 100.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 file contains procedure implementations of [pm_cosmicRate](@ref pm_cosmicRate).
      19             : !>
      20             : !>  \finmain
      21             : !>
      22             : !>  \author
      23             : !>  \AmirShahmoradi, Wednesday 5:43 PM, December 25, 2013, Institute for Fusion Studies, The University of Texas at Austin
      24             : 
      25             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      26             : 
      27             : submodule (pm_cosmicRate) routines
      28             : 
      29             : #if CHECK_ENABLED
      30             :     use pm_err, only: getFine
      31             :     use pm_val2str, only: getStr
      32             :     use pm_err, only: setAsserted
      33             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) \
      34             : call setAsserted(ASSERTION,getFine(__FILE__,LINE)//MODULE_NAME//MSG);
      35             : #else
      36             : #define CHECK_ASSERTION(LINE,ASSERTION,MSG) continue;
      37             : #endif
      38             : 
      39             :     implicit none
      40             : 
      41             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      42             : 
      43             : contains
      44             : 
      45             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      46             : 
      47             : #define getLogRateDensity_ENABLED 1
      48             : 
      49             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      50             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      51             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      52             : 
      53             : #define D0_ENABLED 1
      54             : 
      55             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      56             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      57             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      58             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      59             : 
      60             : #define H06_ENABLED 1
      61             : 
      62             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      63             : 
      64             : #define RK_ENABLED 1
      65             : 
      66             : #if RK5_ENABLED
      67             :     module procedure getLogRateDensityH06_D0_RK5
      68             :         use pm_kind, only: RKC => RK5
      69             : #include "pm_cosmicRate@routines.inc.F90"
      70             :     end procedure
      71             : #endif
      72             : 
      73             : #if RK4_ENABLED
      74         500 :     module procedure getLogRateDensityH06_D0_RK4
      75             :         use pm_kind, only: RKC => RK4
      76             : #include "pm_cosmicRate@routines.inc.F90"
      77         500 :     end procedure
      78             : #endif
      79             : 
      80             : #if RK3_ENABLED
      81        1000 :     module procedure getLogRateDensityH06_D0_RK3
      82             :         use pm_kind, only: RKC => RK3
      83             : #include "pm_cosmicRate@routines.inc.F90"
      84        1000 :     end procedure
      85             : #endif
      86             : 
      87             : #if RK2_ENABLED
      88        8614 :     module procedure getLogRateDensityH06_D0_RK2
      89             :         use pm_kind, only: RKC => RK2
      90             : #include "pm_cosmicRate@routines.inc.F90"
      91        8614 :     end procedure
      92             : #endif
      93             : 
      94             : #if RK1_ENABLED
      95         500 :     module procedure getLogRateDensityH06_D0_RK1
      96             :         use pm_kind, only: RKC => RK1
      97             : #include "pm_cosmicRate@routines.inc.F90"
      98         500 :     end procedure
      99             : #endif
     100             : 
     101             : #undef RK_ENABLED
     102             : 
     103             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     104             : 
     105             : #undef H06_ENABLED
     106             : 
     107             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     108             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     109             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     110             : 
     111             : #define L08_ENABLED 1
     112             : 
     113             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     114             : 
     115             : #define RK_ENABLED 1
     116             : 
     117             : #if RK5_ENABLED
     118             :     module procedure getLogRateDensityL08_D0_RK5
     119             :         use pm_kind, only: RKC => RK5
     120             : #include "pm_cosmicRate@routines.inc.F90"
     121             :     end procedure
     122             : #endif
     123             : 
     124             : #if RK4_ENABLED
     125         500 :     module procedure getLogRateDensityL08_D0_RK4
     126             :         use pm_kind, only: RKC => RK4
     127             : #include "pm_cosmicRate@routines.inc.F90"
     128         500 :     end procedure
     129             : #endif
     130             : 
     131             : #if RK3_ENABLED
     132        1000 :     module procedure getLogRateDensityL08_D0_RK3
     133             :         use pm_kind, only: RKC => RK3
     134             : #include "pm_cosmicRate@routines.inc.F90"
     135        1000 :     end procedure
     136             : #endif
     137             : 
     138             : #if RK2_ENABLED
     139        9088 :     module procedure getLogRateDensityL08_D0_RK2
     140             :         use pm_kind, only: RKC => RK2
     141             : #include "pm_cosmicRate@routines.inc.F90"
     142        9088 :     end procedure
     143             : #endif
     144             : 
     145             : #if RK1_ENABLED
     146         500 :     module procedure getLogRateDensityL08_D0_RK1
     147             :         use pm_kind, only: RKC => RK1
     148             : #include "pm_cosmicRate@routines.inc.F90"
     149         500 :     end procedure
     150             : #endif
     151             : 
     152             : #undef RK_ENABLED
     153             : 
     154             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     155             : 
     156             : #undef L08_ENABLED
     157             : 
     158             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     159             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     160             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     161             : 
     162             : #define B10_ENABLED 1
     163             : 
     164             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     165             : 
     166             : #define RK_ENABLED 1
     167             : 
     168             : #if RK5_ENABLED
     169             :     module procedure getLogRateDensityB10_D0_RK5
     170             :         use pm_kind, only: RKC => RK5
     171             : #include "pm_cosmicRate@routines.inc.F90"
     172             :     end procedure
     173             : #endif
     174             : 
     175             : #if RK4_ENABLED
     176         500 :     module procedure getLogRateDensityB10_D0_RK4
     177             :         use pm_kind, only: RKC => RK4
     178             : #include "pm_cosmicRate@routines.inc.F90"
     179         500 :     end procedure
     180             : #endif
     181             : 
     182             : #if RK3_ENABLED
     183        1000 :     module procedure getLogRateDensityB10_D0_RK3
     184             :         use pm_kind, only: RKC => RK3
     185             : #include "pm_cosmicRate@routines.inc.F90"
     186        1000 :     end procedure
     187             : #endif
     188             : 
     189             : #if RK2_ENABLED
     190       11281 :     module procedure getLogRateDensityB10_D0_RK2
     191             :         use pm_kind, only: RKC => RK2
     192             : #include "pm_cosmicRate@routines.inc.F90"
     193       11281 :     end procedure
     194             : #endif
     195             : 
     196             : #if RK1_ENABLED
     197         500 :     module procedure getLogRateDensityB10_D0_RK1
     198             :         use pm_kind, only: RKC => RK1
     199             : #include "pm_cosmicRate@routines.inc.F90"
     200         500 :     end procedure
     201             : #endif
     202             : 
     203             : #undef RK_ENABLED
     204             : 
     205             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     206             : 
     207             : #undef B10_ENABLED
     208             : 
     209             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     210             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     211             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     212             : 
     213             : #define M14_ENABLED 1
     214             : 
     215             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     216             : 
     217             : #define RK_ENABLED 1
     218             : 
     219             : #if RK5_ENABLED
     220             :     module procedure getLogRateDensityM14_D0_RK5
     221             :         use pm_kind, only: RKC => RK5
     222             : #include "pm_cosmicRate@routines.inc.F90"
     223             :     end procedure
     224             : #endif
     225             : 
     226             : #if RK4_ENABLED
     227         500 :     module procedure getLogRateDensityM14_D0_RK4
     228             :         use pm_kind, only: RKC => RK4
     229             : #include "pm_cosmicRate@routines.inc.F90"
     230         500 :     end procedure
     231             : #endif
     232             : 
     233             : #if RK3_ENABLED
     234        1000 :     module procedure getLogRateDensityM14_D0_RK3
     235             :         use pm_kind, only: RKC => RK3
     236             : #include "pm_cosmicRate@routines.inc.F90"
     237        1000 :     end procedure
     238             : #endif
     239             : 
     240             : #if RK2_ENABLED
     241       10183 :     module procedure getLogRateDensityM14_D0_RK2
     242             :         use pm_kind, only: RKC => RK2
     243             : #include "pm_cosmicRate@routines.inc.F90"
     244       10183 :     end procedure
     245             : #endif
     246             : 
     247             : #if RK1_ENABLED
     248         500 :     module procedure getLogRateDensityM14_D0_RK1
     249             :         use pm_kind, only: RKC => RK1
     250             : #include "pm_cosmicRate@routines.inc.F90"
     251         500 :     end procedure
     252             : #endif
     253             : 
     254             : #undef RK_ENABLED
     255             : 
     256             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     257             : 
     258             : #undef M14_ENABLED
     259             : 
     260             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     261             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     262             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     263             : 
     264             : #define P15_ENABLED 1
     265             : 
     266             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     267             : 
     268             : #define RK_ENABLED 1
     269             : 
     270             : #if RK5_ENABLED
     271             :     module procedure getLogRateDensityP15_D0_RK5
     272             :         use pm_kind, only: RKC => RK5
     273             : #include "pm_cosmicRate@routines.inc.F90"
     274             :     end procedure
     275             : #endif
     276             : 
     277             : #if RK4_ENABLED
     278         500 :     module procedure getLogRateDensityP15_D0_RK4
     279             :         use pm_kind, only: RKC => RK4
     280             : #include "pm_cosmicRate@routines.inc.F90"
     281         500 :     end procedure
     282             : #endif
     283             : 
     284             : #if RK3_ENABLED
     285        1000 :     module procedure getLogRateDensityP15_D0_RK3
     286             :         use pm_kind, only: RKC => RK3
     287             : #include "pm_cosmicRate@routines.inc.F90"
     288        1000 :     end procedure
     289             : #endif
     290             : 
     291             : #if RK2_ENABLED
     292        8472 :     module procedure getLogRateDensityP15_D0_RK2
     293             :         use pm_kind, only: RKC => RK2
     294             : #include "pm_cosmicRate@routines.inc.F90"
     295        8472 :     end procedure
     296             : #endif
     297             : 
     298             : #if RK1_ENABLED
     299         500 :     module procedure getLogRateDensityP15_D0_RK1
     300             :         use pm_kind, only: RKC => RK1
     301             : #include "pm_cosmicRate@routines.inc.F90"
     302         500 :     end procedure
     303             : #endif
     304             : 
     305             : #undef RK_ENABLED
     306             : 
     307             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     308             : 
     309             : #undef P15_ENABLED
     310             : 
     311             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     312             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     313             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     314             : 
     315             : #define M17_ENABLED 1
     316             : 
     317             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     318             : 
     319             : #define RK_ENABLED 1
     320             : 
     321             : #if RK5_ENABLED
     322             :     module procedure getLogRateDensityM17_D0_RK5
     323             :         use pm_kind, only: RKC => RK5
     324             : #include "pm_cosmicRate@routines.inc.F90"
     325             :     end procedure
     326             : #endif
     327             : 
     328             : #if RK4_ENABLED
     329         500 :     module procedure getLogRateDensityM17_D0_RK4
     330             :         use pm_kind, only: RKC => RK4
     331             : #include "pm_cosmicRate@routines.inc.F90"
     332         500 :     end procedure
     333             : #endif
     334             : 
     335             : #if RK3_ENABLED
     336        1000 :     module procedure getLogRateDensityM17_D0_RK3
     337             :         use pm_kind, only: RKC => RK3
     338             : #include "pm_cosmicRate@routines.inc.F90"
     339        1000 :     end procedure
     340             : #endif
     341             : 
     342             : #if RK2_ENABLED
     343        9766 :     module procedure getLogRateDensityM17_D0_RK2
     344             :         use pm_kind, only: RKC => RK2
     345             : #include "pm_cosmicRate@routines.inc.F90"
     346        9766 :     end procedure
     347             : #endif
     348             : 
     349             : #if RK1_ENABLED
     350         500 :     module procedure getLogRateDensityM17_D0_RK1
     351             :         use pm_kind, only: RKC => RK1
     352             : #include "pm_cosmicRate@routines.inc.F90"
     353         500 :     end procedure
     354             : #endif
     355             : 
     356             : #undef RK_ENABLED
     357             : 
     358             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     359             : 
     360             : #undef M17_ENABLED
     361             : 
     362             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     363             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     364             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     365             : 
     366             : #define F18_ENABLED 1
     367             : 
     368             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     369             : 
     370             : #define RK_ENABLED 1
     371             : 
     372             : #if RK5_ENABLED
     373             :     module procedure getLogRateDensityF18_D0_RK5
     374             :         use pm_kind, only: RKC => RK5
     375             : #include "pm_cosmicRate@routines.inc.F90"
     376             :     end procedure
     377             : #endif
     378             : 
     379             : #if RK4_ENABLED
     380         500 :     module procedure getLogRateDensityF18_D0_RK4
     381             :         use pm_kind, only: RKC => RK4
     382             : #include "pm_cosmicRate@routines.inc.F90"
     383         500 :     end procedure
     384             : #endif
     385             : 
     386             : #if RK3_ENABLED
     387        1000 :     module procedure getLogRateDensityF18_D0_RK3
     388             :         use pm_kind, only: RKC => RK3
     389             : #include "pm_cosmicRate@routines.inc.F90"
     390        1000 :     end procedure
     391             : #endif
     392             : 
     393             : #if RK2_ENABLED
     394       10356 :     module procedure getLogRateDensityF18_D0_RK2
     395             :         use pm_kind, only: RKC => RK2
     396             : #include "pm_cosmicRate@routines.inc.F90"
     397       10356 :     end procedure
     398             : #endif
     399             : 
     400             : #if RK1_ENABLED
     401         500 :     module procedure getLogRateDensityF18_D0_RK1
     402             :         use pm_kind, only: RKC => RK1
     403             : #include "pm_cosmicRate@routines.inc.F90"
     404         500 :     end procedure
     405             : #endif
     406             : 
     407             : #undef RK_ENABLED
     408             : 
     409             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     410             : 
     411             : #undef F18_ENABLED
     412             : 
     413             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     414             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     415             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     416             : 
     417             : #undef D0_ENABLED
     418             : 
     419             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     420             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     421             :     !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     422             : 
     423             : #undef getLogRateDensity_ENABLED
     424             : 
     425             : !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     426             : 
     427             : #undef CHECK_ASSERTION
     428             : 
     429             : end submodule routines

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