phil-blain / CICE

Development repository for the CICE sea-ice model
Other
0 stars 0 forks source link

Verify intent(out) vs intent(inout) in ice_dyn_vp.F90 #15

Closed phil-blain closed 4 years ago

phil-blain commented 4 years ago

See message of a8da536e80f76c671162b63152e06bf89dc8ed13 for why this is important to check.

phil-blain commented 4 years ago

calc_zeta_Pr:

stress_prime_vpOLD

calc_bfix

residual_vec

precond_diag

calc_L2norm_squared

fgmres, pgmres

phil-blain commented 4 years ago

NOTE: stPrtmp is used as "stPr" in calc_bvec, with incremented indices, but this array is never initialized!! so what is in these indices ? who knows

phil-blain commented 4 years ago

@JFLemieux73 as-tu une idée de à quoi on devrait initializer stPrtmp ? Est-ce que zéro serait ok ?

phil-blain commented 4 years ago

Note: les stress (stress[p,m,12]_[1-4]) sont initialisés à zéro dans init_evp (appelé dans init_vp) et remis à zéro pour les cellules sans glace dans dyn_prep2

phil-blain commented 4 years ago

Finalement je ne pense pas que ce soit grave pour stPrtmp, parce que j'aurais eu une erreur si il utilisait des valeurs non initialisées, à cause des signaling NaNs.

phil-blain commented 4 years ago

Je confirme : https://github.com/phil-blain/CICE/blob/9b474d0886b7da0d8d068a9cdf7717ac597731b2/cicecore/cicedynB/dynamics/ice_dyn_shared.F90#L513-L548

icellu est défini de j=jlo,jhi, etc et icellt est défini sur j=jlo,jhi+1 et le tableau stPr est défini sur icellt dans calc_zeta_Pr et utilisé sur icellu avec {i,j}+1} dans calc_bvec

phil-blain commented 4 years ago

Every occurence is verified, closing.