#2334 closed Bug (fixed)
Wrong initialization of T/S open boundary data if set from initial state
Reported by: | jchanut | Owned by: | systeam |
---|---|---|---|
Priority: | low | Milestone: | |
Component: | BDY | Version: | v4.0 |
Severity: | minor | Keywords: | v4.0 |
Cc: |
Description
Context
In nambdy, if nn_tra_dta = 0 then open boundary data arrays are filled with initial fields. Currently, one gets zeros as boundary data values in that case.
Analysis
This done in bdydta thanks to the following lines (around line 165):
IF( nn_tra_dta(jbdy) == 0 ) THEN ilen1(:) = nblen(:) IF( dta_bdy(jbdy)%lneed_tra ) THEN igrd = 1 DO ib = 1, ilen1(igrd) DO ik = 1, jpkm1 ii = idx_bdy(jbdy)%nbi(ib,igrd) ij = idx_bdy(jbdy)%nbj(ib,igrd) dta_bdy(jbdy)%tem(ib,ik) = tsn(ii,ij,ik,jp_bdytem) * tmask(ii,ij,ik) dta_bdy(jbdy)%sal(ib,ik) = tsn(ii,ij,ik,jp_bdysal) * tmask(ii,ij,ik) END DO END DO ENDIF ENDIF
Fix
One should however take as the 4th dimension of tracers jp_tem and jp_sal repectively for T and S:
IF( nn_tra_dta(jbdy) == 0 ) THEN ilen1(:) = nblen(:) IF( dta_bdy(jbdy)%lneed_tra ) THEN igrd = 1 DO ib = 1, ilen1(igrd) DO ik = 1, jpkm1 ii = idx_bdy(jbdy)%nbi(ib,igrd) ij = idx_bdy(jbdy)%nbj(ib,igrd) dta_bdy(jbdy)%tem(ib,ik) = tsn(ii,ij,ik,jp_tem) * tmask(ii,ij,ik) dta_bdy(jbdy)%sal(ib,ik) = tsn(ii,ij,ik,jp_sal) * tmask(ii,ij,ik) END DO END DO ENDIF ENDIF
Commit History (2)
Changeset | Author | Time | ChangeLog |
---|---|---|---|
12050 | jchanut | 2019-12-04T16:38:29+01:00 | #2334, bdy init from initial T/S |
12049 | jchanut | 2019-12-04T16:36:36+01:00 | #2334, bdy init from initial T/S |
Change History (4)
comment:1 Changed 3 years ago by jchanut
comment:2 Changed 3 years ago by jchanut
In 12050:
comment:3 Changed 3 years ago by jchanut
- Resolution set to fixed
- Status changed from new to closed
comment:4 Changed 14 months ago by nemo
- Keywords v4.0 added
Note: See
TracTickets for help on using
tickets.
In 12049: