#define ROMS_MODEL

/*ADD BY WANG  2017.6.17 FROM INLET TEST*/

/*#define WEC_VF
#define WDISS_WAVEMOD
#define UV_KIRBY*/


/*OPTIONS associated with momentum equations*/
#define UV_ADV         /*use to turn ON or OFF advection terms*/
#define UV_COR         /*use to turn ON or OFF Coriolis termV*/
#define UV_VIS2        /*use to turn ON or OFF harmonic horizontal mixing*/

/*OPTIONS for horizontal mixing of momentum:*/
#define MIX_S_UV       /*use if mixing along constant S-surfaces*/

/*OPTIONS for horizontal mixing of tracers: */
#define MIX_S_TS    /*use if mixing along constant S-surfaces*/

/*OPTIONS associated with tracers equations: */
#define TS_MPDATA       /*use if recursive MPDATA 3D advection*/
#ifdef TS_MPDATA
#undef TS_U3HADVECTION  /*use if 3rd-order upstream horiz. advection*/
#undef TS_C4VADVECTION  /*use if 4th-order centered vertical advection*/
#else
#define TS_U3HADVECTION
#define TS_C4VADVECTION
#endif
#define TS_DIF2     /*use to turn ON or OFF harmonic horizontal mixing*/
#define SALINITY  /*use if having salinity */
#define NONLIN_EOS /*use if using nonlinear equation of state*/
#undef QCORRECTION /*use if net heat flux correction*/
#undef SCORRECTION /*use if freshwater flux correction */


/*Pressure gradient algorithm OPTIONS:*/
#define DJ_GRADPS   /*use if splines density Jacobian (Shchepetkin, 2000)*/


/*Model configuration OPTIONS:*/
#define MASKING /*use if land/sea masking*/
#define SOLVE3D /*use if solving 3D primitive equations*/
#define AVERAGES /*use if writing out NLM time-averaged data*/
#define CURVGRID /*use if curvilinear coordinates grid*/


/*Sediment transport model OPTIONS:*/
#undef SEDIMENT  /*use to activate sediment transport model*/
#ifdef SEDIMENT
#undef ANA_SEDIMENT
#define SUSPLOAD
#undef BEDLOAD_MPM
#undef BEDLOAD_SOULSBY
#define ANA_SPFLUX 
#define ANA_BPFLUX
#endif



/* bottom boundary layer closure,define only one of the following 5 */
#undef  UV_LOGDRAG  /*use to turn ON or OFF logarithmic bottom friction*/
#define  UV_QDRAG    /*use to turn ON or OFF quadratic bottom friction*/
#undef  MB_BBL      /*use if Meinte Blaas BBL closure*/
#undef  SG_BBL      /*use if Styles and Glenn (2000) BBL closure*/

#undef SSW_BBL /* Sherwood et al. BBL closure */
#ifdef SSW_BBL
# define SSW_CALC_ZNOT /* Computing bottom roughness internally */
# undef SSW_LOGINT /* Logarithmic interpolation of (Ur,Vr) */
# undef SSW_CALC_UB /* Computing bottom orbital velocity internally */
# undef SSW_FORM_DRAG_COR /* Activate form drag coefficient */
# undef SSW_ZOBIO /* Biogenic bedform roughness from ripples */
# undef SSW_ZOBL /* Bedload roughness for ripples */
# undef SSW_ZORIP /* Bedform roughness from ripples */
#endif



/* OPTIONS for analytical fields configuration:*/
#define ANA_INITIAL
#define ANA_SMFLUX  /*use if analytical surface momentum stress*/
#define ANA_STFLUX  /*use if analytical surface net heat flux*/
#define ANA_SSFLUX  /*use if analytical surface salinity flux*/
#define ANA_BTFLUX  /*use if analytical bottom temperature flux*/
#define ANA_BSFLUX  /*use if analytical bottom salinity flux*/

/*# define BULK_FLUXES
# define ANA_BTFLUX
# define ANA_BSFLUX
# define ATM_PRESS
# define EMINUSP
# define SOLAR_SOURCE*/




/* %%%%%%%%%%%%% vertical turbulent mixing %%%%%%%%%%%%*/
#undef MY25_MIXING
#define GLS_MIXING

#if defined GLS_MIXING || defined MY25_MIXING
# define KANTHA_CLAYSON
# define N2S2_HORAVG
# define RI_SPLINES
#endif

/* %%%%%%%%%%%%%%%%%% tide %%%%%%%%%%%%%%%%%*/
# define SSH_TIDES   
# define UV_TIDES

# ifdef SSH_TIDES           /* if turn on SSH_TIDES  */
# define ANA_FSOBC
# endif

# ifdef  UV_TIDES       /* if turn on UV_TIDES  */
# define ANA_M2OBC
# endif

/*Lateral boundary conditions OPTIONS:*/
#define RADIATION_2D /*use if tangential phase speed in radiation conditions*/

/*NetCDF input/output OPTIONS:*/
#define PERFECT_RESTART /*NetCDF input/output OPTIONS:*/
#define RST_SINGLE  /*use if writing single precision restart fields*/

#define STATIONS
