-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.f90
69 lines (44 loc) · 1.92 KB
/
main.f90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
!> @mainpage
!>@author
!>Paul J. Connolly, The University of Manchester
!>@copyright 2018
!>@brief
!>Bin Diffusion Model (BDM):
!>Solve equations of parcel model treating aerosol particles with a moving
!> boundary diffusion model
!>
!>
!> <br><br>
!> compile using the Makefile (note requires netcdf) and then run using: <br>
!> ./main.exe namelist.in
!> <br><br>
!> (namelist used for initialisation).
!> <br><br>
!>@author
!>Paul J. Connolly, The University of Manchester
!>@brief
!>main programme reads in information, allocates arrays, then calls the model driver
program main
use numerics_type
use bdm, only : read_in_bdm_namelist, initialise_bdm_arrays, bdm_driver
use bmm, only : io1
implicit none
character (len=200) :: nmlfile = ' '
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! read in namelists !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
call getarg(1,nmlfile)
call read_in_bdm_namelist(nmlfile)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! allocate and initialise the grid !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
call initialise_bdm_arrays()
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! run the model !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
io1%new_file=.true.
call bdm_driver()
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
end program main