/[MITgcm]/MITgcm_contrib/dgoldberg/streamice/eta_gl_streamice.F
ViewVC logotype

Annotation of /MITgcm_contrib/dgoldberg/streamice/eta_gl_streamice.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Tue Feb 19 19:13:30 2013 UTC (12 years, 5 months ago) by dgoldberg
Branch: MAIN
for smoothing surface dependence on floatation condition

1 dgoldberg 1.1 #include "CPP_OPTIONS.h"
2    
3     _RL FUNCTION ETA_GL_STREAMICE (X, M1, M2, Y0, W)
4    
5     ! This function smooths out slope discontinuities in a 1D function
6     ! y(x) is assumed piecewise linear with a slope discontinuity at 0
7     ! the results is smoothed only on -w/2 < x < w/2
8    
9     ! X: input variable
10     ! M1: slope of y where x<0
11     ! M2: slope of y where x>0
12     ! Y0: value of y at 0
13     ! W: width of smoothing
14    
15     _RL X, M1, M2, Y0, W
16     _RL TMP1, PI
17    
18     IF (X<-1.0*W/2.0) THEN
19     ETA_GL_STREAMICE = Y0 + M1 * X
20     ELSEIF(X>W/2.0) THEN
21     ETA_GL_STREAMICE = Y0 + M2 * X
22     ELSE
23     PI = 3.14159265358979323844D0
24     TMP1 = W/PI * COS(PI*X/W)
25     ETA_GL_STREAMICE = Y0 +
26     & M1/2 * (X-W/2+TMP1) +
27     & M2/2 * (X+W/2-TMP1)
28     ENDIF
29    
30     RETURN
31     END

  ViewVC Help
Powered by ViewVC 1.1.22