#1200 closed Bug (fixed)
Array out of bounds in AGRIF update
Reported by: | jchanut | Owned by: | jchanut |
---|---|---|---|
Priority: | low | Milestone: | |
Component: | AGRIF | Version: | v3.6 |
Severity: | Keywords: | 2-ways v3.6 | |
Cc: |
Description
I compiled ORCA2_LIM with Agulhas AGRIF zoom with arrays bounds checking. Running the model on 128 processors (jpniXjpnj=16X8), nemo stops at first iteration (same issue with different mpp decomposition). The job returns an error on arrays dimensions held by AGRIF during tracers' feedback onto coarse grid:
Image PC Routine Line Source libintlc.so.5 00007F957FB81F7A Unknown Unknown Unknown libintlc.so.5 00007F957FB80AF5 Unknown Unknown Unknown libifcore.so.5 00007F95808511F2 Unknown Unknown Unknown libifcore.so.5 00007F95807C65FB Unknown Unknown Unknown libifcore.so.5 00007F95807C6A87 Unknown Unknown Unknown opa 0000000000EA65B6 agrif_update_mp_a 2022 modupdate.f opa 0000000000EA2D3E agrif_update_mp_a 2126 modupdate.f opa 0000000000E8DFA6 agrif_update_mp_a 1335 modupdate.f opa 0000000000E77097 agrif_update_mp_a 996 modupdate.f opa 0000000000E729F9 agrif_update_mp_a 562 modupdate.f opa 0000000000EB172D agrif_update_mp_a 298 modupdate.f opa 0000000000DBB594 agrif_bcfunction_ 2099 modbcfunction.f opa 00000000006A5CB0 agrif_opa_update_ 51 agrif_opa_update.f90 opa 00000000005C61F3 tranxt_mp_sub_loo 236 tranxt.f90 opa 00000000005C3AAA tranxt_mp_tra_nxt 108 tranxt.f90 opa 000000000046E9D8 step_mp_sub_loop_ 397 step.f90 opa 000000000046C1F1 step_mp_stp_ 100 step.f90 opa 00000000006C0795 agrif_util_mp_agr 588 modutil.f opa 00000000006C0443 agrif_util_mp_agr 126 modutil.f opa 0000000000403DD2 nemogcm_mp_nemo_g 134 nemogcm.f90 opa 00000000004033F2 MAIN__ 22 nemo.f90 opa 000000000040338C Unknown Unknown Unknown libc.so.6 0000003D6A61ECDD Unknown Unknown Unknown opa 0000000000403289 Unknown Unknown Unknown forrtl: severe (408): fort: (2): Subscript #1 of the array TABTEMP has value 130 which is greater than the upper bound of 129
The error occurs in routine Agrif_Update_Tra, at the following line:
CALL Agrif_Update_Variable(ztab,tsn_id,locupdate=(/0,2/), procname=updateTS
Which is an update near the fine grid boundary of tracers. The error disappears if one perform the update on the whole domain, ie when the following line is called (set nn_cln_update=1 in namelist in order to do so):
CALL Agrif_Update_Variable(ztab,tsn_id, procname=updateTS)
or (which is weird), if one more point is updated:
CALL Agrif_Update_Variable(ztab,tsn_id,locupdate=(/0,3/), procname=updateTS)
Any idea ?
Commit History (0)
(No commits)
Change History (13)
comment:1 Changed 10 years ago by clevy
- Owner changed from NEMO team to jchanut
comment:2 Changed 9 years ago by jchanut
comment:3 Changed 8 years ago by nicolasmartin
- Keywords agrif removed
comment:4 Changed 8 years ago by nicolasmartin
- Keywords nemo_v3_6* added
comment:5 Changed 8 years ago by nicolasmartin
- Keywords nemo_v3_6_STABLE added; update removed
comment:6 Changed 8 years ago by nicolasmartin
- Keywords 2-ways added; ways removed
comment:7 Changed 8 years ago by nicolasmartin
- Keywords two removed
comment:8 Changed 8 years ago by nicolasmartin
- Keywords nemo_v3_6_STABLE removed
comment:9 Changed 7 years ago by jchanut
comment:10 Changed 7 years ago by jchanut
- Resolution set to fixed
- Status changed from new to closed
comment:11 Changed 6 years ago by nemo
- Keywords release-3.6* added; nemo_v3_6* removed
comment:12 Changed 6 years ago by nemo
- Keywords release-3.6* removed
comment:13 Changed 2 years ago by nemo
- Keywords v3.6 added
Defining AGRIF arrays from 1:nlci, 1:nlcj solved the problem