Uniformly negative concentration values

Report or discuss software problems and other woes

Moderators: arango, robertson

Post Reply
Message
Author
artem_vb
Posts: 4
Joined: Mon Jan 18, 2010 4:57 pm
Location: United Kingdom

Uniformly negative concentration values

#1 Unread post by artem_vb »

Hi,

I am modelling the cohesive sediment and passive tracer spreading from the single-point source at the surface in the middle of the open sea (admittedly the one of the worst combinations). The problem is, that I have got uniformly negative values of the concentrations through the whole domain both for passive tracer and for sediment during the whole period of simulation. I could understand having positive and negative values, say, around the point source -- this is well-known problem (actually, at the beginning of simulation for passive tracer I see couple of positive values in the vicinity of the point source). But what I see as if point source is actually sink. Of course, if I change the sign of Qbar or Tsrc for point sources I have got the positive results. The question is -- why?

I use Q_PSOURCE with TS_MPDATA switched on. If instead of Q_PSOURCE I switch on UV_PSOURCE the result is the expected mix of negative and positive concentrations.

I use the analytical initial and boundary conditions.

Here is the setup for definitions:

# define UV_ADV
# define UV_COR
# define UV_QDRAG
#define Q_PSOURCE
#undef UV_PSOURCE
# define UV_VIS2
# define MIX_S_UV
# define DJ_GRADPS
# undef TS_A4HADVECTION
# undef TS_A4VADVECTION
# define TS_DIF2
# define MIX_GEO_TS
# define TS_PSOURCE
# define NONLIN_EOS
# define SALINITY
# define MASKING
# define SOLVE3D
# define SPLINES
# define AVERAGES
# define AVERAGES_AKV
# define AVERAGES_AKT
# define AVERAGES_AKS
# define NORTH_FSCHAPMAN
# define NORTH_M2FLATHER
# define NORTH_M3RADIATION
# define NORTH_TRADIATION
# define WEST_FSCHAPMAN
# define WEST_M2FLATHER
# define WEST_M3RADIATION
# define WEST_TRADIATION
# define SOUTH_FSCHAPMAN
# define SOUTH_M2FLATHER
# define SOUTH_M3RADIATION
# define SOUTH_TRADIATION
# define EASTERN_WALL
# define LMD_MIXING
# ifdef LMD_MIXING
# define LMD_RIMIX
# define LMD_CONVEC
# define LMD_SKPP
# define LMD_BKPP
# define LMD_NONLOCAL
# endif
# define WET_DRY
# define ANA_INITIAL
# define ANA_PSOURCE
# define ANA_SMFLUX
# define ANA_SRFLUX
# define ANA_SSFLUX
# define ANA_STFLUX
# define ANA_BSFLUX
# define ANA_BTFLUX
#define ANA_BPFLUX
#define ANA_SPFLUX
# define ANA_FSOBC
# define ANA_M2OBC
# define ANA_TOBC
# undef ANA_GRID
# undef ANA_MASKING
# define T_PASSIVE
# define ANA_PASSIVE

#define TS_MPDATA
# define SEDIMENT
# ifdef SEDIMENT
# define SUSPLOAD
# define BEDLOAD_MPM
# endif
#define ANA_SEDIMENT

The relevant lines from ana_psource.h :

Nsrc=1
Dsrc(1)=0.0_r8
Isrc(1)=64
Jsrc(1)=36

DO k=1,N(ng)
DO is=1,Nsrc
IF (k.eq.N(ng)) THEN
Qshape(is,k)=1.0_r8
ELSE
Qshape(is,k)=0.0_r8
END IF
END DO
END DO

DO k=1,N(ng)
DO is=1,Nsrc
Tsrc(is,k,itemp)=T0(ng)
Tsrc(is,k,isalt)=S0(ng)+20.0_r8
DO ised=1,NPT
Tsrc(is,k,ised+2)=8.0_r8
END DO
DO ised=1, NST
Tsrc(is, k, idsed(ised)) = 3.2_r8
END DO
END DO
END DO

Thanks in advance to whoever will decide to help.

Post Reply