Custom Query (964 matches)
Results (409 - 411 of 964)
Ticket | Owner | Reporter | Resolution | Summary |
---|---|---|---|---|
#351 | Fixed | Added missing CPP directives | ||
Description |
Corrected missing CPP directives in routines tl_step3d_uv.F and ad_step3d_uv.F. This bug was introduced in src:ticket:346. Many thanks to Gregoire Broquet and Andy Moore for reporting this. I also corrected a small defect in tl_balance.F and ad_balance.F. We need to have: DO j=JstrR,JendR DO i=IstrR,IendR DO k=1,N(ng) cff=0.5_r8*(dTdz(i,j,k-1)+dTdz(i,j,k)) IF (ABS(cff).lt.dTdz_min) THEN dzdT=0.0_r8 ELSE dzdT=1.0_r8/cff END IF dSdT(k)=(0.5_r8*(dSdz(i,j,k-1)+ & & dSdz(i,j,k )))*dzdT END DO instead of: DO j=JstrR,JendR DO i=IstrR,IendR DO k=1,N(ng) IF (ABS(dTdz(i,j,k)).lt.dTdz_min) THEN dzdT=0.0_r8 ELSE dzdT=1.0_r8/(0.5_r8*(dTdz(i,j,k-1)+ & & dTdz(i,j,k ))) END IF dSdT(k)=(0.5_r8*(dSdz(i,j,k-1)+ & & dSdz(i,j,k )))*dzdT END DO |
|||
#352 | Fixed | Corrected bugs in Matlab script uv_balance.m | ||
Description |
Corrected several serious bugs in Matlab script uv_balance.m which computes the unbalanced standard deviation used to scale the 4DVar error convariance matrix when the balance operator is activated. I am now getting identical solutions when I compare the Matlab compact notation (much faster) against the Fortran-like statements with for loops. |
|||
#353 | Fixed | Failure from wrt_stations.F when LdefSTA is false. | ||
Description |
Turn off the processing of stations and floats if not running long enough to create such NetCDF files. That is, LdefSTA(ng) is false because nSTA(ng) < ntimes or nSTA(ng) = 0 when nrrec = 0. Therefore, we also need Lstations(ng) to be false. The following patch to inp_par.F fix the problem: diff --git a/ROMS/Utility/inp_par.F b/ROMS/Utility/inp_par.F index dc13796..9a6fa88 100644 --- a/ROMS/Utility/inp_par.F +++ b/ROMS/Utility/inp_par.F @@ -11100,6 +11100,10 @@ ! Report input parameters. !----------------------------------------------------------------------- ! + DO ng=1,Ngrids + IF (.not. LdefFLT(ng) .and. Lfloats(ng)) & + & Lfloats(ng) = .FALSE. + END DO IF (Lwrite) THEN DO ng=1,Ngrids IF (ncount(ng).ne.Nfloats(ng)) THEN @@ -11534,6 +11538,10 @@ ! Report input parameters. !----------------------------------------------------------------------- ! + DO ng=1,Ngrids + IF (.not. LdefSTA(ng) .and. Lstations(ng)) & + & Lstations(ng) = .FALSE. + END DO IF (Lwrite) THEN DO ng=1,Ngrids IF (Lstations(ng)) THEN |