& nonlinFreeSurf, select_rStar,
INTEGER nonlinFreeSurf
IF (nonlinFreeSurf.GT.0) THEN
& .NOT.rigidLid .AND. nonlinFreeSurf.LE.0 ) THEN
IF ( (rigidLid.OR.nonlinFreeSurf.GE.1) .AND. k.EQ.1 ) THEN
ELSEIF ( rigidLid.OR.nonlinFreeSurf.GE.1 ) THEN
IF ( (nonlinFreeSurf.GT.0 .OR. usingPCoords)
IF (select_rStar.GE.2 .AND. nonlinFreeSurf.GE.1 ) THEN
IF (select_rStar.GE.2 .AND. nonlinFreeSurf.GE.4 ) THEN
ELSEIF (select_rStar.GE.1 .AND. nonlinFreeSurf.GE.4 ) THEN
addSurfPhiAnom = select_rStar.EQ.0 .AND. nonlinFreeSurf.GT.3
IF ( nonlinFreeSurf.GT.0 ) THEN
IF ( nonlinFreeSurf.EQ.0 .AND.
IF ( nonlinFreeSurf.GT.0 .AND.
IF (nonlinFreeSurf.NE.0) THEN
IF ( linFSConserveTr .AND. nonlinFreeSurf.NE.0 ) THEN
IF (nonlinFreeSurf.NE.0 .AND. .NOT.exactConserv) THEN
IF ( nonlinFreeSurf.LE.0 ) THEN
IF ( nonlinFreeSurf.NE.0 .AND.
IF (nonlinFreeSurf.NE.0 .AND. use3Dsolver) THEN
buffI(1) = nonlinFreeSurf
& .OR. nonlinFreeSurf.LE.0 ) THEN
IF ( ( (nonlinFreeSurf.GT.0 .OR. usingPCoords)
IF ( select_rStar.GT.0 .AND. nonlinFreeSurf.GE.4 ) THEN
IF ( ( selectAddFluid.GE.1 .AND. nonlinFreeSurf.GT.0 )
IF (staggerTimeStep.AND.nonlinFreeSurf.GT.0) THEN
IF ( momStepping .AND. nonlinFreeSurf.GT.2 ) THEN
ELSEIF ( nonlinFreeSurf.GT.0 .AND. selectSigmaCoord.EQ.0 ) THEN
IF ( staggerTimeStep .AND. nonlinFreeSurf.GT.0 ) THEN
& nonlinFreeSurf, hFacInf, hFacSup, select_rStar,
IF ( nonlinFreeSurf.GT.2) THEN
ELSEIF ( nonlinFreeSurf.GT.0) THEN
IF (nonlinFreeSurf .GE. 0) THEN
IF (nonlinFreeSurf .GT. 0) THEN
nonlinFreeSurf = 0
& .AND. nonlinFreeSurf.GT.1 ) THEN
IF ( nonlinFreeSurf.GT.0 .AND. selectSigmaCoord.NE.0 ) THEN
IF ( nonlinFreeSurf.GT.0) THEN