### do_salinity - salinity equation

INTERFACE:

```    subroutine do_salinity(n)
```
DESCRIPTION:

Here, one time step for the salinity equation is performed. First, preparations for the call to the advection schemes are made, i.e. calculating the necessary metric coefficients. After the call to the advection schemes, which actually perform the advection (and horizontal diffusion) step as an operational split step, the tri-diagonal matrix for calculating the new salinity by means of a semi-implicit central scheme for the vertical diffusion is set up. There are no source terms on the right hand sides. The subroutine is completed by solving the tri-diagonal linear equation by means of a tri-diagonal solver.

Also here, there are some specific options for single test cases selected by compiler options. USES:

```    use advection_3d, only: do_advection_3d
use variables_3d, only: dt,cnpar,hn,ho,nuh,uu,vv,ww,hun,hvn
use domain,       only: imin,imax,jmin,jmax,kmax,az
use parameters, only: avmols
use getm_timers, only: tic, toc, TIM_SALT, TIM_MIXANALYSIS
use variables_3d, only: do_numerical_analyses
use variables_3d, only: nummix3d_S,nummix2d_S
use variables_3d, only: phymix3d_S,phymix2d_S
\$ use omp_lib
IMPLICIT NONE
```
INPUT PARAMETERS:
```    integer, intent(in) :: n
```
LOCAL VARIABLES:
```    integer                   :: i,j,k,rc
REALTYPE, POINTER         :: Res(:)
REALTYPE, POINTER         :: auxn(:),auxo(:)
REALTYPE, POINTER         :: a1(:),a2(:),a3(:),a4(:)
REALTYPE                   :: S2(I3DFIELD)
integer                    :: status
```

kklingbe 2017-10-02