subroutine reservoir_read_storage_file() ! reservoir_storage_conf.csv
use input, only : read_real_column, input_open_file
integer :: fid
real(dp), dimension(:), allocatable :: temp
integer size
fid = input_open_file(trim(reservoir_storage_input_file))
size = rsv_nReservoirs * 20
allocate(temp(size))
call read_real_column(fid, "pol_l", temp, 0.0_dp)
rsv_pol_L(1, 1:20) = temp(1:20)
rsv_pol_L(2, 1:20) = temp(21:40)
call read_real_column(fid, "pol_l2", temp, 0.0_dp)
rsv_pol_L2(1, 1:20) = temp(1:20)
rsv_pol_L2(2, 1:20) = temp(21:40)
call read_real_column(fid, "pol_a", temp, 0.0_dp)
rsv_pol_A(1, 1:20) = temp(1:20)
rsv_pol_A(2, 1:20) = temp(21:40)
call read_real_column(fid, "pol_v", temp, 0.0_dp)
rsv_pol_V(1, 1:20) = temp(1:20)
rsv_pol_V(2, 1:20) = temp(21:40)
call read_real_column(fid, "pol_hp", temp, 0.0_dp)
rsv_pol_HP(1, 1:20) = temp(1:20)
rsv_pol_HP(2, 1:20) = temp(21:40)
! convert million m^3 to m^3
rsv_pol_V = rsv_pol_V * 10 ** 6 ! convert [million m^3] into [m^3]
close(fid)
end subroutine reservoir_read_storage_file