URI: 
       tssafd_pik_code.cc - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch)
  HTML git clone git://src.adamsgaard.dk/pism
   DIR Log
   DIR Files
   DIR Refs
   DIR LICENSE
       ---
       tssafd_pik_code.cc (1905B)
       ---
            1 const double dx2 = dx*dx, dy2 = dy*dy, d4 = 4*dx*dy, d2 = 2*dx*dy;
            2 
            3 /* Coefficients of the discretization of the first equation; u first, then v. */
            4 double eq1[] = {
            5  0,  -c_n*bPP/dy2,  0, 
            6  -4*c_w*aMM/dx2,  (c_n*bPP+c_s*bMM)/dy2+(4*c_e*aPP+4*c_w*aMM)/dx2,  -4*c_e*aPP/dx2, 
            7  0,  -c_s*bMM/dy2,  0, 
            8  c_w*aMM*bPw/d2+c_n*aMn*bPP/d4,  (c_n*aPn*bPP-c_n*aMn*bPP)/d4+(c_w*aMM*bPP-c_e*aPP*bPP)/d2,  -c_e*aPP*bPe/d2-c_n*aPn*bPP/d4, 
            9  (c_w*aMM*bMw-c_w*aMM*bPw)/d2+(c_n*aMM*bPP-c_s*aMM*bMM)/d4,  (c_n*aPP*bPP-c_n*aMM*bPP-c_s*aPP*bMM+c_s*aMM*bMM)/d4+(c_e*aPP*bPP-c_w*aMM*bPP-c_e*aPP*bMM+c_w*aMM*bMM)/d2,  (c_e*aPP*bPe-c_e*aPP*bMe)/d2+(c_s*aPP*bMM-c_n*aPP*bPP)/d4, 
           10  -c_w*aMM*bMw/d2-c_s*aMs*bMM/d4,  (c_s*aMs*bMM-c_s*aPs*bMM)/d4+(c_e*aPP*bMM-c_w*aMM*bMM)/d2,  c_e*aPP*bMe/d2+c_s*aPs*bMM/d4, 
           11 };
           12 
           13 /* Coefficients of the discretization of the second equation; u first, then v. */
           14 double eq2[] = {
           15  c_w*aMM*bPw/d4+c_n*aMn*bPP/d2,  (c_n*aPn*bPP-c_n*aMn*bPP)/d2+(c_w*aMM*bPP-c_e*aPP*bPP)/d4,  -c_e*aPP*bPe/d4-c_n*aPn*bPP/d2, 
           16  (c_w*aMM*bMw-c_w*aMM*bPw)/d4+(c_n*aMM*bPP-c_s*aMM*bMM)/d2,  (c_n*aPP*bPP-c_n*aMM*bPP-c_s*aPP*bMM+c_s*aMM*bMM)/d2+(c_e*aPP*bPP-c_w*aMM*bPP-c_e*aPP*bMM+c_w*aMM*bMM)/d4,  (c_e*aPP*bPe-c_e*aPP*bMe)/d4+(c_s*aPP*bMM-c_n*aPP*bPP)/d2, 
           17  -c_w*aMM*bMw/d4-c_s*aMs*bMM/d2,  (c_s*aMs*bMM-c_s*aPs*bMM)/d2+(c_e*aPP*bMM-c_w*aMM*bMM)/d4,  c_e*aPP*bMe/d4+c_s*aPs*bMM/d2, 
           18  0,  -4*c_n*bPP/dy2,  0, 
           19  -c_w*aMM/dx2,  (4*c_n*bPP+4*c_s*bMM)/dy2+(c_e*aPP+c_w*aMM)/dx2,  -c_e*aPP/dx2, 
           20  0,  -4*c_s*bMM/dy2,  0, 
           21 };
           22 
           23 /* i indices */
           24 const int I[] = {
           25  i-1,  i,  i+1, 
           26  i-1,  i,  i+1, 
           27  i-1,  i,  i+1, 
           28  i-1,  i,  i+1, 
           29  i-1,  i,  i+1, 
           30  i-1,  i,  i+1, 
           31 };
           32 
           33 /* j indices */
           34 const int J[] = {
           35  j+1,  j+1,  j+1, 
           36  j,  j,  j, 
           37  j-1,  j-1,  j-1, 
           38  j+1,  j+1,  j+1, 
           39  j,  j,  j, 
           40  j-1,  j-1,  j-1, 
           41 };
           42 
           43 /* component indices */
           44 const int C[] = {
           45  0,  0,  0, 
           46  0,  0,  0, 
           47  0,  0,  0, 
           48  1,  1,  1, 
           49  1,  1,  1, 
           50  1,  1,  1, 
           51 };
           52