source: lim1d_ws/trunk/GRAPHICS/cc2stock.pro @ 2

Last change on this file since 2 was 2, checked in by vancop, 8 years ago

initial import /Users/ioulianikolskaia/Boulot/CODES/LIM1D/ARCHIVE/TMP/LIM1D_v3.20/

File size: 1.6 KB
Line 
1
2PRO cc2stock, z_ib, c_i, S_i
3
4;==================================================================================================
5;
6; this gorgeous script integrates a concentration c_i (./m3) into a stock S_i (./m2)
7; by integrating vertically on any grid
8; (c) Martouf, Helsinki, Aug 2014
9;
10;==================================================================================================
11;
12;--------------------------------------------------------------------------------------------------
13; extract number of layers and time steps
14;--------------------------------------------------------------------------------------------------
15
16zsize = SIZE(c_i)
17
18nlay = zsize(1)   ; number of layers
19nts  = zsize(2)   ; number of time steps
20
21S_i = FLTARR(nts)
22
23;--------------------------------------------------------------------------------------------------
24; Compute layer depths
25;--------------------------------------------------------------------------------------------------
26dz = FLTARR(nlay,nts)
27
28FOR i = 0, nts - 1 DO BEGIN
29   zz = 0.
30   FOR jk = 0, nlay - 1 DO BEGIN
31      dz(jk,i) = 2.* ( z_ib(jk,i) - zz )
32      zz       = z_ib(jk,i) + dz(jk,i) / 2.
33   ENDFOR
34ENDFOR
35
36;--------------------------------------------------------------------------------------------------
37; Compute the weighted vertical average
38;--------------------------------------------------------------------------------------------------
39
40S_i[*] = 0.
41FOR i = 0, nts - 1 DO BEGIN
42    FOR k = 0, nlay - 1 DO BEGIN
43       S_i(i) = S_i(i) + dz(k,i) * c_i(k,i)
44    ENDFOR
45ENDFOR
46
47;--------------------------------------------------------------------------------------------------
48
49END
Note: See TracBrowser for help on using the repository browser.