@@ -551,7 +551,7 @@ subroutine FV_Setup(GC,LAYOUT_FILE, RC)
551551 FV_Atm(1 )% flagstruct% compute_coords_locally = .TRUE.
552552 FV_Atm(1 )% flagstruct% hydrostatic = .true.
553553 ! Rayleigh Damping
554- FV_Atm(1 )% flagstruct% rf_cutoff = 0.35e2
554+ FV_Atm(1 )% flagstruct% rf_cutoff = 0.50e2
555555 FV_Atm(1 )% flagstruct% tau = 5.0
556556 FV_Atm(1 )% flagstruct% RF_fast = .false.
557557 if (FV_Atm(1 )% flagstruct% ntiles == 6 ) then
@@ -561,98 +561,85 @@ subroutine FV_Setup(GC,LAYOUT_FILE, RC)
561561 FV_Atm(1 )% flagstruct% hydrostatic = .true.
562562 FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 3600.0 )
563563 FV_Atm(1 )% flagstruct% tau = 5.0
564- FV_Atm(1 )% flagstruct% rf_cutoff = 0.35e2
565564 FV_Atm(1 )% flagstruct% RF_fast = .false.
566565 endif
567566 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 24 ) then
568567 FV_Atm(1 )% flagstruct% hydrostatic = .true.
569568 FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 1800.0 )
570569 FV_Atm(1 )% flagstruct% tau = 5.0
571- FV_Atm(1 )% flagstruct% rf_cutoff = 0.35e2
572570 FV_Atm(1 )% flagstruct% RF_fast = .false.
573571 endif
574572 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 48 ) then
575573 FV_Atm(1 )% flagstruct% hydrostatic = .true.
576574 FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 1200.0 )
577575 FV_Atm(1 )% flagstruct% tau = 5.0
578- FV_Atm(1 )% flagstruct% rf_cutoff = 0.35e2
579576 FV_Atm(1 )% flagstruct% RF_fast = .false.
580577 endif
581578 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 90 ) then
582579 FV_Atm(1 )% flagstruct% hydrostatic = .true.
583580 FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 600.0 )
584581 FV_Atm(1 )% flagstruct% tau = 5.0
585- FV_Atm(1 )% flagstruct% rf_cutoff = 0.35e2
586582 FV_Atm(1 )% flagstruct% RF_fast = .false.
587583 endif
588584 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 180 ) then
589585 FV_Atm(1 )% flagstruct% hydrostatic = .true.
590- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 450 .0 )
586+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 300 .0 )
591587 FV_Atm(1 )% flagstruct% tau = 5.0
592- FV_Atm(1 )% flagstruct% rf_cutoff = 0.70e2
593588 FV_Atm(1 )% flagstruct% RF_fast = .false.
594589 endif
595590 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 360 ) then
596591 FV_Atm(1 )% flagstruct% hydrostatic = .false.
597- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 300 .0 )
592+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 150 .0 )
598593 FV_Atm(1 )% flagstruct% tau = 4.0
599- FV_Atm(1 )% flagstruct% rf_cutoff = 1.50e2
600- FV_Atm(1 )% flagstruct% RF_fast = .true.
594+ FV_Atm(1 )% flagstruct% RF_fast = .false.
601595 endif
602596 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 720 ) then
603597 FV_Atm(1 )% flagstruct% hydrostatic = .false.
604- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 150 .0 )
598+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 75 .0 )
605599 if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 120.0 )
606600 FV_Atm(1 )% flagstruct% tau = 3.0
607- FV_Atm(1 )% flagstruct% rf_cutoff = 3.00e2
608- FV_Atm(1 )% flagstruct% RF_fast = .true.
601+ FV_Atm(1 )% flagstruct% RF_fast = .false.
609602 endif
610603 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 1120 ) then
611604 FV_Atm(1 )% flagstruct% hydrostatic = .false.
612- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 100 .0 )
605+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 60 .0 )
613606 if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 90.0 )
614607 FV_Atm(1 )% flagstruct% tau = 2.5
615- FV_Atm(1 )% flagstruct% rf_cutoff = 5.00e2
616- FV_Atm(1 )% flagstruct% RF_fast = .true.
608+ FV_Atm(1 )% flagstruct% RF_fast = .false.
617609 endif
618610 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 1440 ) then
619611 FV_Atm(1 )% flagstruct% hydrostatic = .false.
620- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 75.0 )
612+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 37.5 )
621613 if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 60.0 )
622614 FV_Atm(1 )% flagstruct% tau = 2.0
623- FV_Atm(1 )% flagstruct% rf_cutoff = 7.50e2
624615 FV_Atm(1 )% flagstruct% RF_fast = .true.
625616 endif
626617 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 2880 ) then
627618 FV_Atm(1 )% flagstruct% hydrostatic = .false.
628- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 37.5 )
629- if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 30.0 )
630- FV_Atm(1 )% flagstruct% tau = 1.0
631- FV_Atm(1 )% flagstruct% rf_cutoff = 10.0e2
619+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 18.75 )
620+ if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 30.0 )
621+ FV_Atm(1 )% flagstruct% tau = 1.5
632622 FV_Atm(1 )% flagstruct% RF_fast = .true.
633623 endif
634624 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 4320 ) then
635625 FV_Atm(1 )% flagstruct% hydrostatic = .false.
636- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 28.125 )
626+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 15.0 )
637627 if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 15.0 )
638628 FV_Atm(1 )% flagstruct% tau = 1.0
639- FV_Atm(1 )% flagstruct% rf_cutoff = 12.5e2
640629 FV_Atm(1 )% flagstruct% RF_fast = .true.
641630 endif
642631 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 5760 ) then
643632 FV_Atm(1 )% flagstruct% hydrostatic = .false.
644- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 18.75 )
645- if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 7.5 )
633+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 9.375 )
634+ if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 7.5 )
646635 FV_Atm(1 )% flagstruct% tau = 1.0
647- FV_Atm(1 )% flagstruct% rf_cutoff = 15.0e2
648636 FV_Atm(1 )% flagstruct% RF_fast = .true.
649637 endif
650638 if (FV_Atm(1 )% flagstruct% npx* CEILING (FV_Atm(1 )% flagstruct% stretch_fac) >= 10800 ) then
651639 FV_Atm(1 )% flagstruct% hydrostatic = .false.
652- FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 9.375 )
653- if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 3.25 )
640+ FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 4.6875 )
641+ if (FV_Atm(1 )% flagstruct% stretch_fac > 1 ) FV_Atm(1 )% flagstruct% k_split = CEILING (DT/ 3.25 )
654642 FV_Atm(1 )% flagstruct% tau = 1.0
655- FV_Atm(1 )% flagstruct% rf_cutoff = 20.0e2
656643 FV_Atm(1 )% flagstruct% RF_fast = .true.
657644 endif
658645 FV_Atm(1 )% flagstruct% k_split = MAX (FV_Atm(1 )% flagstruct% k_split,1 )
@@ -677,7 +664,7 @@ subroutine FV_Setup(GC,LAYOUT_FILE, RC)
677664 FV_Atm(1 )% flagstruct% beta = 0.0
678665 FV_Atm(1 )% flagstruct% a_imp = 1.0
679666 ! dz_min is a NH delta-z limiter increasing may improve stability
680- FV_Atm(1 )% flagstruct% dz_min = 6 .0
667+ FV_Atm(1 )% flagstruct% dz_min = 2 .0
681668 ! p_fac is a NH pressure fraction limiter near model top (0:0.25)
682669 FV_Atm(1 )% flagstruct% p_fac = 0.05
683670 ! General defaults
@@ -696,7 +683,7 @@ subroutine FV_Setup(GC,LAYOUT_FILE, RC)
696683 FV_Atm(1 )% flagstruct% d_con = 0 .
697684 else
698685 ! Non-Monotonic advection schemes
699- FV_Atm(1 )% flagstruct% hord_mt = 6
686+ FV_Atm(1 )% flagstruct% hord_mt = 5
700687 FV_Atm(1 )% flagstruct% hord_vt = 6
701688 FV_Atm(1 )% flagstruct% hord_tm = 6
702689 FV_Atm(1 )% flagstruct% hord_dp = - 6
0 commit comments