Skip to content
Snippets Groups Projects
Select Git revision
  • 1cdcd1e0774a7f1c7e35104ef3b56a69c8fb9ac0
  • master default protected
  • enxhi_issue460_remove_TOAR-I_access
  • michael_issue459_preprocess_german_stations
  • sh_pollutants
  • develop protected
  • release_v2.4.0
  • michael_issue450_feat_load-ifs-data
  • lukas_issue457_feat_set-config-paths-as-parameter
  • lukas_issue454_feat_use-toar-statistics-api-v2
  • lukas_issue453_refac_advanced-retry-strategy
  • lukas_issue452_bug_update-proj-version
  • lukas_issue449_refac_load-era5-data-from-toar-db
  • lukas_issue451_feat_robust-apriori-estimate-for-short-timeseries
  • lukas_issue448_feat_load-model-from-path
  • lukas_issue447_feat_store-and-load-local-clim-apriori-data
  • lukas_issue445_feat_data-insight-plot-monthly-distribution
  • lukas_issue442_feat_bias-free-evaluation
  • lukas_issue444_feat_choose-interp-method-cams
  • 414-include-crps-analysis-and-other-ens-verif-methods-or-plots
  • lukas_issue384_feat_aqw-data-handler
  • v2.4.0 protected
  • v2.3.0 protected
  • v2.2.0 protected
  • v2.1.0 protected
  • Kleinert_etal_2022_initial_submission
  • v2.0.0 protected
  • v1.5.0 protected
  • v1.4.0 protected
  • v1.3.0 protected
  • v1.2.1 protected
  • v1.2.0 protected
  • v1.1.0 protected
  • IntelliO3-ts-v1.0_R1-submit
  • v1.0.0 protected
  • v0.12.2 protected
  • v0.12.1 protected
  • v0.12.0 protected
  • v0.11.0 protected
  • v0.10.0 protected
  • IntelliO3-ts-v1.0_initial-submit
41 results

default_data_handler.py

Blame
  • pi_serial.f90 1.13 KiB
    program pi
    
    implicit none
    
    integer, parameter :: DARTS = 50000, ROUNDS = 10, MASTER = 0
    
    real(8) :: pi_est
    real(8) :: homepi, avepi, pirecv, pisum
    integer :: rank
    integer :: i, n
    integer, allocatable :: seed(:)
    
    ! we set it to zero in the sequential run
    rank = 0
    
    ! initialize the random number generator
    ! we make sure the seed is different for each task
    call random_seed()
    call random_seed(size = n)
    allocate(seed(n))
    seed = 12 + rank*11
    call random_seed(put=seed(1:n))
    deallocate(seed)
    
    avepi = 0
    do i = 0, ROUNDS-1
       pi_est = dboard(DARTS)
    
       ! calculate the average value of pi over all iterations
       avepi = ((avepi*i) + pi_est)/(i + 1)
    
       print *, "After ", DARTS*(i+1), " throws, average value of pi =", avepi
    end do
    
    contains
    
       real(8) function dboard(darts)
    
          integer, intent(in) :: darts
    
          real(8) :: x_coord, y_coord
          integer :: score, n
    
          score = 0
          do n = 1, darts
             call random_number(x_coord)
             call random_number(y_coord)
    
             if ((x_coord**2 + y_coord**2) <= 1.0d0) then
                score = score + 1
             end if
          end do
          dboard = 4.0d0*score/darts
    
       end function
    
    end program