Changeset 17306


Ignore:
Timestamp:
02/19/14 13:17:59 (11 years ago)
Author:
seroussi
Message:

NEW: additional analytical 2d tests

Location:
issm/trunk-jpl/src/c/shared/FSanalyticals
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified issm/trunk-jpl/src/c/shared/FSanalyticals/fsanalyticals.cpp

    r17304 r17306  
    3232                case 6:
    3333                        return fx=fx6(x,y,z);
     34                case 7:
     35                        return fx=fx7(x,y);
     36                case 8:
     37                        return fx=1.0;
    3438                default:
    3539                        _error_("FS analytical solution"<<testid<<" not implemented yet");
     
    5357                case 6:
    5458                        return fy=fy6(x,y,z);
     59                case 7:
     60                        return fy=fy7(x,y);
     61                case 8:
     62                        return fy=1.0;
    5563                default:
    5664                        _error_("FS analytical solution"<<testid<<" not implemented yet");
     
    6270
    6371        switch(testid){
    64                 case 1: case 2:
     72                case 1: case 2: case 7: case 8:
    6573                        return fz=0.;
    6674                case 3:
     
    228236}
    229237/*}}}*/
     238IssmDouble fx7(IssmDouble x,IssmDouble y){/*{{{*/
     239        IssmDouble functionx;
     240        IssmDouble z=y;
     241
     242        functionx =  4*pow(x, 2)*z*pow(x - 1, 2) + 4*pow(x, 2)*z*(z - 1)*(2*z - 1) + 4*pow(x, 2)*pow(x - 1, 2)*(z - 1) + 2*pow(x, 2)*pow(x - 1, 2)*(2*z - 1) + 16*x*z*(x - 1)*(z - 1)*(2*z - 1) - 4*pow(z, 3)*(6*pow(x, 2) - 6*x + 1) + 6*pow(z, 2)*(6*pow(x, 2) - 6*x + 1) + 4*z*pow(x - 1, 2)*(z - 1)*(2*z - 1) - 2*z*(6*pow(x, 2) - 6*x + 1) + 1;
     243        return functionx;
     244}
     245/*}}}*/
     246IssmDouble fy7(IssmDouble x,IssmDouble y){   /*{{{*/
     247        IssmDouble functiony;
     248        IssmDouble z=y;
     249
     250        functiony = -8*pow(x, 3) + 4*pow(x, 2)*z*(x - 1)*(z - 1) + 2*pow(x, 2)*z*(x - 1)*(2*z - 1) + 2*pow(x, 2)*(x - 1)*(z - 1)*(2*z - 1) + 12*pow(x, 2) + 4*x*z*pow(x - 1, 2)*(z - 1) + 2*x*z*pow(x - 1, 2)*(2*z - 1) + 2*x*pow(x - 1, 2)*(z - 1)*(2*z - 1) - 4*x - 6*pow(z, 4)*(2*x - 1) + 12*pow(z, 3)*(2*x - 1) - 6*pow(z, 2)*(2*x - 1) - 24*pow(z, 2)*(2*pow(x, 3) - 3*pow(x, 2) + x) + 24*z*(2*pow(x, 3) - 3*pow(x, 2) + x);
     251
     252        return functiony;
     253}
     254/*}}}*/
  • TabularUnified issm/trunk-jpl/src/c/shared/FSanalyticals/fsanalyticals.h

    r17304 r17306  
    2727IssmDouble fy6(IssmDouble x_coord, IssmDouble y_coord, IssmDouble z_coord);
    2828IssmDouble fz6(IssmDouble x_coord, IssmDouble y_coord, IssmDouble z_coord);
     29IssmDouble fx7(IssmDouble x_coord, IssmDouble y_coord);
     30IssmDouble fy7(IssmDouble x_coord, IssmDouble y_coord);
    2931
    3032#endif //ifndef _SHARED_ANALYTICALS_H_
Note: See TracChangeset for help on using the changeset viewer.