Parent Directory
|
Revision Log
|
Revision Graph
Two packages: bulk_forcing (Bulk forcing) and thermodynamic_seaice (adapted from LANL CICE.v2.0.2) Earlier integration from Stephaine Dutkiewicz and Patrick Heimbach. Two ifdef statements for compile time, ALLOW_TSEAICE and ALLOW_BULKFORMULA Two switches in data.pkg to turn on at run-time: cat data.pkg # Packages &PACKAGES useBulkf=.TRUE., useTSeaIce=.TRUE., & The bulk package requires an additional parameter file with two namelists. cat data.blk &BULKF_PARM01 RainFile= 'ncep_precip_m_cubed.bin', SolarFile= 'ncep_downsolr_cubed.bin', AirTempFile= 'ncep_tair_cubed.bin', AirhumidityFile='ncep_qair_g_cubed.bin', LongwaveFile= 'ncep_netlw_cubed.bin', UWindFile= 'ncep_uwind_cubed.bin', VWindFile= 'ncep_vwind_cubed.bin', WspeedFile= ' ', RunoffFile= ' ', QnetFile= ' ', EmPFile= 'ncep_emp_calc_cubed.bin', CloudFile= 'ncep_totalcloud_cubed.bin', & &BULKF_PARM02 qnet_off=0.0, empmr_off=0.0, conservcycle=311040000., & c ADAPTED FROM: c LANL CICE.v2.0.2 c----------------------------------------------------------------------- c.. thermodynamics (vertical physics) based on M. Winton 3-layer model c.. See Bitz, C. M. and W. H. Lipscomb, 1999: "An energy-conserving c.. thermodynamic sea ice model for climate study." J. Geophys. c.. Res., 104, 15669 - 15677. c.. Winton, M., 1999: "A reformulated three-layer sea ice model." c.. Submitted to J. Atmos. Ocean. Technol. c.. authors Elizabeth C. Hunke and William Lipscomb c.. Fluid Dynamics Group, Los Alamos National Laboratory c----------------------------------------------------------------------- WARNING: useSEAICE and useTSEAICE are mutually exclusive. todo: thermodynamic.F should be reviewed and cleaned up a bit.
1 | adcroft | 1.2 | |
2 | #include "CPP_OPTIONS.h" | ||
3 | |||
4 | cnh | 1.8 | CBOP |
5 | C !ROUTINE: PACKAGES_INIT_VARIABLES | ||
6 | C !INTERFACE: | ||
7 | adcroft | 1.2 | SUBROUTINE PACKAGES_INIT_VARIABLES( myThid ) |
8 | cnh | 1.8 | |
9 | C !DESCRIPTION: \bv | ||
10 | C *==========================================================* | ||
11 | C | SUBROUTINE PACKAGES_INIT_VARIABLES | ||
12 | C | o Does initialisation of package-related variable data | ||
13 | C *==========================================================* | ||
14 | C \ev | ||
15 | |||
16 | C !CALLING SEQUENCE: | ||
17 | C PACKAGES_INIT_VARIABLES | ||
18 | C | | ||
19 | C |-- GMREDI_INIT | ||
20 | C | | ||
21 | C |-- KPP_INIT | ||
22 | C |-- KPP_OPEN_DIAGS | ||
23 | C | | ||
24 | heimbach | 1.14 | C |-- SEAICE_INIT |
25 | C | | ||
26 | cnh | 1.8 | C |-- OBCS_INIT_VARIABLES |
27 | C | | ||
28 | C |-- CTRL_MAP_INI | ||
29 | C | | ||
30 | C |-- COST_INIT | ||
31 | C | | ||
32 | C |-- ECCO_INIT | ||
33 | C | | ||
34 | C |-- INI_FORCING | ||
35 | |||
36 | C !USES: | ||
37 | adcroft | 1.2 | IMPLICIT NONE |
38 | C === Global variables === | ||
39 | #include "SIZE.h" | ||
40 | #include "EEPARAMS.h" | ||
41 | #include "PARAMS.h" | ||
42 | |||
43 | cnh | 1.8 | C !INPUT/OUTPUT PARAMETERS: |
44 | adcroft | 1.2 | C === Routine arguments === |
45 | C myThid - Number of this instances | ||
46 | INTEGER myThid | ||
47 | cnh | 1.8 | CEOP |
48 | adcroft | 1.2 | |
49 | #ifdef ALLOW_GMREDI | ||
50 | C-- Initialize GM/Redi parameterization | ||
51 | IF (useGMRedi) CALL GMREDI_INIT( myThid ) | ||
52 | #endif | ||
53 | |||
54 | #ifdef ALLOW_KPP | ||
55 | C-- Initialize KPP vertical mixing scheme. | ||
56 | IF (useKPP) THEN | ||
57 | CALL KPP_INIT( myThid ) | ||
58 | CALL KPP_OPEN_DIAGS( myThid ) | ||
59 | ENDIF | ||
60 | heimbach | 1.14 | #endif |
61 | |||
62 | #ifdef ALLOW_SEAICE | ||
63 | C-- Initialize SEAICE model. | ||
64 | IF (useSEAICE) CALL SEAICE_INIT( myThid ) | ||
65 | adcroft | 1.2 | #endif |
66 | |||
67 | #ifdef ALLOW_OBCS | ||
68 | C-- Open boundaries data | ||
69 | IF (useOBCS) THEN | ||
70 | CALL OBCS_INIT_VARIABLES( myThid ) | ||
71 | ENDIF | ||
72 | adcroft | 1.11 | #endif |
73 | |||
74 | #ifdef ALLOW_PTRACERS | ||
75 | IF ( usePTRACERS ) CALL PTRACERS_INIT( mythid ) | ||
76 | adcroft | 1.2 | #endif |
77 | |||
78 | heimbach | 1.10 | #if (defined (ALLOW_ADJOINT_RUN) || defined (ALLOW_TANGENTLINEAR_RUN)) |
79 | heimbach | 1.5 | c-- Map the control variables onto the model state. |
80 | call ctrl_map_ini( mythid ) | ||
81 | _BARRIER | ||
82 | #endif | ||
83 | |||
84 | adcroft | 1.2 | #ifdef INCLUDE_ECCO_PACKAGE |
85 | IF (useECCO) THEN | ||
86 | CALL ECCO_INIT( myThid ) | ||
87 | ENDIF | ||
88 | heimbach | 1.12 | #else |
89 | # ifdef ALLOW_COST | ||
90 | c-- Initialise the cost function. | ||
91 | call cost_init( mythid ) | ||
92 | _BARRIER | ||
93 | # endif | ||
94 | adcroft | 1.2 | #endif |
95 | |||
96 | cheisey | 1.16 | cswdblk -- begin add --- |
97 | #ifdef ALLOW_BULKFORMULA | ||
98 | IF (useBulkf) call BULKF_INIT( mythid) | ||
99 | #endif | ||
100 | cswdblk ---end add --- | ||
101 | |||
102 | cswdice ---begin add --- | ||
103 | #ifdef ALLOW_TSEAICE | ||
104 | IF (useSeaIce) call ICE_INIT( mythid) | ||
105 | #endif | ||
106 | cswdice ---end add --- | ||
107 | |||
108 | |||
109 | adcroft | 1.2 | RETURN |
110 | END |
ViewVC Help | |
Powered by ViewVC 1.1.22 |