Custom Query (964 matches)
Results (127 - 129 of 964)
Ticket | Owner | Reporter | Resolution | Summary |
---|---|---|---|---|
#677 | Fixed | Light formulation in npzd_Powell.h without SPITZ cpp flag | ||
Description |
I'm following up on a forum post entitled NPZD_POWELL without SPITZ CPP option dated Nov 27 2013. This post discusses a bug that has gone unfixed as of January 14 2015 when I downloaded the version of ROMS I am currently working with. To reiterate: The option to run NPZD_POWELL without SPITZ flag produces an error in the phytoplankton growth rate. Perhaps make the SPITZ option activated by default as that follows Powell et al. 2006, delete the alternative code, and delete the SPITZ CPP option? For example, in npzd_Powell.h replace the following: #ifdef SPITZ cff1=dtdays*Vm_NO3(ng)*PhyIS(ng) cff2=Vm_NO3(ng)*Vm_NO3(ng) cff3=PhyIS(ng)*PhyIS(ng) #else cff1=dtdays*Vm_NO3(ng) #endif DO k=1,N(ng) DO i=Istr,Iend #ifdef SPITZ cff4=1.0_r8/SQRT(cff2+cff3*Light(i,k)*Light(i,k)) cff=Bio(i,k,iPhyt)* & & cff1*cff4*Light(i,k)/ & & (K_NO3(ng)+Bio(i,k,iNO3_)) #else cff=Bio(i,k,iPhyt)* & & cff1*Light(i,k)/ & & (K_NO3(ng)+Bio(i,k,iNO3_)) #endif Bio(i,k,iNO3_)=Bio(i,k,iNO3_)/(1.0_r8+cff) Bio(i,k,iPhyt)=Bio(i,k,iPhyt)+ & & Bio(i,k,iNO3_)*cff END DO END DO with: cff1=dtdays*Vm_NO3(ng)*PhyIS(ng) cff2=Vm_NO3(ng)*Vm_NO3(ng) cff3=PhyIS(ng)*PhyIS(ng) DO k=1,N(ng) DO i=Istr,Iend cff4=1.0_r8/SQRT(cff2+cff3*Light(i,k)*Light(i,k)) cff=Bio(i,k,iPhyt)* & & cff1*cff4*Light(i,k)/ & & (K_NO3(ng)+Bio(i,k,iNO3_)) Bio(i,k,iNO3_)=Bio(i,k,iNO3_)/(1.0_r8+cff) Bio(i,k,iPhyt)=Bio(i,k,iPhyt)+ & & Bio(i,k,iNO3_)*cff END DO END DO |
|||
#686 | Invalid | DSTART ignored with ANA_INITIAL | ||
Description |
With ANA_INITIAL, the model time gets overwritten: ROMS/Nonlinear/initial.F: time(ng)=io_time ! needed for shared-memory so that setting DSTART is ignored. The variable io_time is set in get_state.F which isn't called in the ANA_INITIAL case. I don't see how INI_FILE can be activated with analytical initial conditions. |
|||
#688 | Fixed | Bug in utility/rotate_vec.m | ||
Description |
At lines 126:127 for 3D vector fields, we should have in rotate_vec.m: Vout(i,1:Mm,:)=-UatV(1,2:M ,:).*sin(Vangle(1,1:Mm,:))- ... Vinp(i,1:Mm,:).*cos(Vangle(1,1:Mm,:)); instead of Vout(i,1:Mm)=-UatV(1,2:M ).*sin(Vangle(1,1:Mm))- ... Vinp(i,1:Mm).*cos(Vangle(1,1:Mm)); This is for the rotation at the edges [1,L] of the vector field. Thank you. |