A parameter sweep often starts by counting how many combinations will be evaluated.

Program

Play the program to change one dimension of the grid and see the total case count.

alpha_count
parameter_grid_count.f90
Replay: real traced execution (multi-file project)
program parameter_grid_count_demo
    implicit none
    integer :: alpha_count
    integer :: beta_count
    integer :: total_cases

    alpha_count = 3
    beta_count = 2
    total_cases = alpha_count * beta_count
    print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases
end program parameter_grid_count_demo
program parameter_grid_count_demo
    implicit none
    integer :: alpha_count
    integer :: beta_count
    integer :: total_cases

    alpha_count = 2
    beta_count = 2
    total_cases = alpha_count * beta_count
    print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases
end program parameter_grid_count_demo
program parameter_grid_count_demo
    implicit none
    integer :: alpha_count
    integer :: beta_count
    integer :: total_cases

    alpha_count = 4
    beta_count = 2
    total_cases = alpha_count * beta_count
    print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases
end program parameter_grid_count_demo
  1. alpha_count ← 3

    7alpha_count = 38beta_count = 2
    values this step3alpha_count
  2. beta_count ← 2

    7alpha_count = 38beta_count = 29total_cases = alpha_count * beta_count
    values this step2beta_count
  3. total_cases ← 6

    8beta_count = 29total_cases = alpha_count * beta_count10print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases
    values this step6total_cases3alpha_count2beta_count
  4. print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases

    9    total_cases = alpha_count * beta_count10    print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases11end program parameter_grid_count_demo
    output3 2 6
    values this step3alpha_count2beta_count6total_cases
  1. alpha_count ← 2

    7alpha_count = 28beta_count = 2
    values this step2alpha_count
  2. beta_count ← 2

    7alpha_count = 28beta_count = 29total_cases = alpha_count * beta_count
    values this step2beta_count
  3. total_cases ← 4

    8beta_count = 29total_cases = alpha_count * beta_count10print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases
    values this step4total_cases2alpha_count2beta_count
  4. print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases

    9    total_cases = alpha_count * beta_count10    print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases11end program parameter_grid_count_demo
    output2 2 4
    values this step2alpha_count2beta_count4total_cases
  1. alpha_count ← 4

    7alpha_count = 48beta_count = 2
    values this step4alpha_count
  2. beta_count ← 2

    7alpha_count = 48beta_count = 29total_cases = alpha_count * beta_count
    values this step2beta_count
  3. total_cases ← 8

    8beta_count = 29total_cases = alpha_count * beta_count10print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases
    values this step8total_cases4alpha_count2beta_count
  4. print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases

    9    total_cases = alpha_count * beta_count10    print '(I0, 1X, I0, 1X, I0)', alpha_count, beta_count, total_cases11end program parameter_grid_count_demo
    output4 2 8
    values this step4alpha_count2beta_count8total_cases
grid dimension Each parameter list contributes one dimension to the sweep grid.
case count Multiplying dimension sizes gives the number of combinations.
planning pass Counting cases before evaluating them keeps sweep work visible.