-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update EMC develop from NCAR dtc/develop 2020/03/17 #81
Changes from all commits
e45b4f4
759997d
8bd0c2e
e6e2c81
685722d
eaed2d3
9f91d6d
c985af4
b3f213d
9ee222b
c69850f
8cba04d
2e27a29
daba616
b9a3887
a4a0418
ae916b3
a333ffc
8c7f231
1d1b1f8
332fb61
c8c7d06
2e3b41d
dc11553
3dba65f
72c51fc
5975b8e
3fd71cf
d94fedd
ed2116d
b9f75af
a3fc609
b2404b5
2124b57
e726454
cb7e389
a550ddf
1688b29
07af073
661e98c
bc31689
03f7d78
9caa172
ac71e23
2de4377
8b23f66
eae6786
88e87e9
3aacc00
66c7001
c9322aa
0a292c4
9f72864
d373518
eb4c2e0
41884c2
3be9f98
aa99bea
b317eae
3780030
718b7a5
1c7f2c1
fd8b1d6
5264272
38b8834
153ae61
d0a75a9
9228d4c
6353b7c
fa72e2b
e14e81f
c58e27a
e15f304
1f61c0b
fdb78ae
77e0957
9234128
35bbaf7
9de2a9d
b2614a4
8f057b8
94006f6
cf0fad6
756ef51
42bc16e
e83422c
b4eddd5
c13ed87
22f0dcb
5c6bd37
bf5bfa1
c6e17ef
1a385e3
3375ede
2507045
2de5048
4e54579
13b04a4
cc085c7
e88f2b3
6d3399b
67c8b06
b8f6e8e
1b5bd6e
872b8fc
fcb1313
722339d
94c863e
8645684
811ca4d
9b79ce1
8672795
1e8b882
7d43172
729b687
9e21926
b8abee3
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -1724,7 +1724,6 @@ subroutine assign_importdata(rc) | |
if (IPD_Data(nb)%Sfcprop%oceanfrac(ix) > zero) then | ||
IPD_Data(nb)%Coupling%tseain_cpl(ix) = datar8(i,j) | ||
IPD_Data(nb)%Sfcprop%tsfco(ix) = datar8(i,j) | ||
! IPD_Data(nb)%Sfcprop%tsfc(ix) = datar8(i,j) | ||
endif | ||
enddo | ||
enddo | ||
|
@@ -1747,13 +1746,17 @@ subroutine assign_importdata(rc) | |
IPD_Data(nb)%Coupling%ficein_cpl(ix) = zero | ||
IPD_Data(nb)%Coupling%slimskin_cpl(ix) = IPD_Data(nb)%Sfcprop%slmsk(ix) | ||
if (IPD_Data(nb)%Sfcprop%oceanfrac(ix) > zero) then | ||
if (datar8(i,j) >= IPD_control%min_seaice*IPD_Data(nb)%Sfcprop%oceanfrac(ix)) then | ||
IPD_Data(nb)%Coupling%ficein_cpl(ix) = max(zero, min(datar8(i,j),one)) | ||
IPD_Data(nb)%Sfcprop%slmsk(ix) = 2. !slmsk=2 crashes in gcycle on partial land points | ||
IPD_Data(nb)%Coupling%ficein_cpl(ix) = max(zero, min(one, datar8(i,j)/IPD_Data(nb)%Sfcprop%oceanfrac(ix))) !LHS: ice frac wrt water area | ||
if (IPD_Data(nb)%Coupling%ficein_cpl(ix) > one-epsln) IPD_Data(nb)%Coupling%ficein_cpl(ix)=one | ||
if (IPD_Data(nb)%Coupling%ficein_cpl(ix) >= IPD_control%min_seaice) then | ||
if (abs(one-IPD_Data(nb)%Sfcprop%oceanfrac(ix)) < epsln) IPD_Data(nb)%Sfcprop%slmsk(ix) = 2. !slmsk=2 crashes in gcycle on partial land points | ||
IPD_Data(nb)%Coupling%slimskin_cpl(ix) = 4. | ||
elseif (abs(one-IPD_Data(nb)%Sfcprop%oceanfrac(ix)) < epsln) then | ||
IPD_Data(nb)%Sfcprop%slmsk(ix) = zero | ||
IPD_Data(nb)%Coupling%slimskin_cpl(ix) = zero | ||
else | ||
IPD_Data(nb)%Coupling%ficein_cpl(ix) = zero | ||
if (abs(one-IPD_Data(nb)%Sfcprop%oceanfrac(ix)) < epsln) then | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I feel this can only be applied for non-fractional grid, is it correct? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @shansun6 this question is for you. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This should work for both nonfrac and frac grid. It is to prevent slmsk to be set to zero when partial ocean exists. When both land and ocean exist in one cell, slmsk is set to 1. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks for the explanation. |
||
IPD_Data(nb)%Sfcprop%slmsk(ix) = zero | ||
IPD_Data(nb)%Coupling%slimskin_cpl(ix) = zero | ||
end if | ||
endif | ||
endif | ||
enddo | ||
|
@@ -1924,7 +1927,7 @@ subroutine assign_importdata(rc) | |
ix = Atm_block%ixp(i,j) | ||
if (IPD_Data(nb)%Sfcprop%oceanfrac(ix) > zero) then | ||
!if it is ocean or ice get surface temperature from mediator | ||
if(IPD_Data(nb)%Coupling%ficein_cpl(ix) >= IPD_control%min_seaice*IPD_Data(nb)%Sfcprop%oceanfrac(ix)) then | ||
if(IPD_Data(nb)%Coupling%ficein_cpl(ix) >= IPD_control%min_seaice) then | ||
IPD_Data(nb)%Sfcprop%tisfc(ix) = IPD_Data(nb)%Coupling%tisfcin_cpl(ix) | ||
IPD_Data(nb)%Sfcprop%fice(ix) = IPD_Data(nb)%Coupling%ficein_cpl(ix) | ||
IPD_Data(nb)%Sfcprop%hice(ix) = IPD_Data(nb)%Coupling%hicein_cpl(ix) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this works for non-fractional grid, where ocean fraction is either close 1 or 0, but does this work for fraction grid where ocean fraction may <1 (50%ocean and 50%land)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@shansun6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When ice and land co-exist, slmsk cannot be 2, since it would crash at gcycle.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see, thanks.