Changeset 9285


Ignore:
Timestamp:
08/11/11 12:00:33 (14 years ago)
Author:
Mathieu Morlighem
Message:

moved Spc to SpcStatic and Spct to SpcTransient

Location:
issm/trunk/src
Files:
2 added
2 deleted
15 edited
4 moved

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/Container/DataSet.cpp

    r9002 r9285  
    282282                                dataset->AddObject(matpar);}
    283283                                break;
    284                         case SpcEnum:{
    285                                 Spc* spc=NULL;
    286                                 spc=new Spc();
    287                                 spc->Demarshall(&marshalled_dataset);
    288                                 dataset->AddObject(spc);}
    289                                 break;
    290                         case SpctEnum:{
    291                                 Spct* spct=NULL;
    292                                 spct=new Spct();
    293                                 spct->Demarshall(&marshalled_dataset);
    294                                 dataset->AddObject(spct);}
     284                        case SpcStaticEnum:{
     285                                SpcStatic* spcstatic=NULL;
     286                                spcstatic=new SpcStatic();
     287                                spcstatic->Demarshall(&marshalled_dataset);
     288                                dataset->AddObject(spcstatic);}
     289                                break;
     290                        case SpcTransientEnum:{
     291                                SpcTransient* spctransient=NULL;
     292                                spctransient=new SpcTransient();
     293                                spctransient->Demarshall(&marshalled_dataset);
     294                                dataset->AddObject(spctransient);}
    295295                                break;
    296296
  • issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h

    r9271 r9285  
    153153        ExternalResultEnum,
    154154        /*Spc: */
    155         SpcEnum,
    156         SpctEnum,
     155        SpcStaticEnum,
     156        SpcTransientEnum,
    157157        /*}}}*/
    158158        /*Geography {{{1*/
  • issm/trunk/src/c/Makefile.am

    r9260 r9285  
    231231                                        ./objects/Materials/Matpar.cpp\
    232232                                        ./objects/Constraints/Constraint.h\
    233                                         ./objects/Constraints/Spc.cpp\
    234                                         ./objects/Constraints/Spc.h\
    235                                         ./objects/Constraints/Spct.cpp\
    236                                         ./objects/Constraints/Spct.h\
     233                                        ./objects/Constraints/SpcStatic.cpp\
     234                                        ./objects/Constraints/SpcStatic.h\
     235                                        ./objects/Constraints/SpcTransient.cpp\
     236                                        ./objects/Constraints/SpcTransient.h\
    237237                                        ./objects/Loads/Penpair.cpp\
    238238                                        ./objects/Loads/Penpair.h\
     
    925925                                        ./objects/Materials/Matpar.cpp\
    926926                                        ./objects/Constraints/Constraint.h\
    927                                         ./objects/Constraints/Spc.cpp\
    928                                         ./objects/Constraints/Spc.h\
    929                                         ./objects/Constraints/Spct.cpp\
    930                                         ./objects/Constraints/Spct.h\
     927                                        ./objects/Constraints/SpcStatic.cpp\
     928                                        ./objects/Constraints/SpcStatic.h\
     929                                        ./objects/Constraints/SpcTransient.cpp\
     930                                        ./objects/Constraints/SpcTransient.h\
    931931                                        ./objects/Loads/Penpair.cpp\
    932932                                        ./objects/Loads/Penpair.h\
  • issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp

    r9271 r9285  
    129129                case ElementResultEnum : return "ElementResult";
    130130                case ExternalResultEnum : return "ExternalResult";
    131                 case SpcEnum : return "Spc";
    132                 case SpctEnum : return "Spct";
     131                case SpcStaticEnum : return "SpcStatic";
     132                case SpcTransientEnum : return "SpcTransient";
    133133                case GeographyEnum : return "Geography";
    134134                case IceSheetEnum : return "IceSheet";
  • issm/trunk/src/c/modules/IoModelToConstraintsx/IoModelToConstraintsx.cpp

    r9081 r9285  
    11/*!\file IoModelToConstraintsx
    2  * \brief: used in ModelProcessor, to retrieve a nodal vector  and to create corresponding constraints using Spc objects
     2 * \brief: used in ModelProcessor, to retrieve a nodal vector  and to create corresponding constraints using Constraints objects
    33 */
    44
     
    4343        /*Transient or static?:*/
    4444        if(M==iomodel->numberofvertices){
    45                 /*static: just create Spc objects*/
     45                /*static: just create Constraints objects*/
    4646                count=0;
    4747       
    48                 /*Create spcs from x,y,z, as well as the spc values on those spcs: */
     48                /*Create Constraints from x,y,z: */
    4949                for (i=0;i<iomodel->numberofvertices;i++){
    5050                       
     
    5454                                if (!isnan(doublevector[i])){
    5555
    56                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,doublevector[i],analysis_type));
     56                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,doublevector[i],analysis_type));
    5757                                        count++;
    5858                                }
     
    6161        }
    6262        else if (M==iomodel->numberofvertices+1){
    63                 /*transient: create transient Spct objects. Same logic, except we need to retrieve
    64                  * various times and values to initialize an Spct object: */
     63                /*transient: create transient SpcTransient objects. Same logic, except we need to retrieve
     64                 * various times and values to initialize an SpcTransient object: */
    6565                count=0;
    6666
     
    7373                UnitConversion(times,N,ExtToIuEnum,TimeEnum);
    7474
    75                 /*Create spcs from x,y,z, as well as the spc values on those spcs: */
     75                /*Create constraints from x,y,z: */
    7676                for (i=0;i<iomodel->numberofvertices;i++){
    7777                       
     
    8888
    8989                                if(spcpresent){
    90                                         constraints->AddObject(new Spct(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,N,times,values,analysis_type));
     90                                        constraints->AddObject(new SpcTransient(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,N,times,values,analysis_type));
    9191                                        count++;
    9292                                }
  • issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/CreateConstraintsDiagnosticHoriz.cpp

    r8926 r9285  
    1919        /*Output*/
    2020        Constraints* constraints = NULL;
    21         Spc*    spc  = NULL;
     21        SpcStatic*    spcstatic  = NULL;
    2222        int     node1,node2;
    2323
     
    3131        if (!iomodel->ismacayealpattyn & !iomodel->isstokes)goto cleanup_and_return;
    3232       
    33         /*Spcs: fetch data: */
     33        /*Constraints: fetch data: */
    3434        IoModelFetchData(&iomodel->spcvx,NULL,NULL,iomodel_handle,SpcvxEnum);
    3535        IoModelFetchData(&iomodel->spcvy,NULL,NULL,iomodel_handle,SpcvyEnum);
     
    5454                                /*If grionmacayeal, spc pattyn dofs: 3 & 4*/
    5555                                        if ((int)iomodel->nodeonpattyn[i]){
    56                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    57                                                 count++;
    58                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    59                                                 count++;
    60                                                 if (!isnan(iomodel->spcvx[i])){
    61                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    62                                                         count++;
    63                                                 }
    64                                                 if (!isnan(iomodel->spcvy[i])){
    65                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     56                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     57                                                count++;
     58                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     59                                                count++;
     60                                                if (!isnan(iomodel->spcvx[i])){
     61                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     62                                                        count++;
     63                                                }
     64                                                if (!isnan(iomodel->spcvy[i])){
     65                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    6666                                                        count++;
    6767                                                }
     
    6969                                        }
    7070                                        else if ((int)iomodel->nodeonmacayeal[i]){
    71                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    72                                                 count++;
    73                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    74                                                 count++;
    75                                                 if (!isnan(iomodel->spcvx[i])){
    76                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    77                                                         count++;
    78                                                 }
    79                                                 if (!isnan(iomodel->spcvy[i])){
    80                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     71                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     72                                                count++;
     73                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     74                                                count++;
     75                                                if (!isnan(iomodel->spcvx[i])){
     76                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     77                                                        count++;
     78                                                }
     79                                                if (!isnan(iomodel->spcvy[i])){
     80                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    8181                                                        count++;
    8282                                                }
     
    8989                                /*If grion,pattyn spc stokes dofs: 3 4 & 5*/
    9090                                        if ((int)iomodel->nodeonpattyn[i]){
    91                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    92                                                 count++;
    93                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    94                                                 count++;
    95                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    96                                                 count++;
    97                                                 if (!isnan(iomodel->spcvx[i])){
    98                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    99                                                         count++;
    100                                                 }
    101                                                 if (!isnan(iomodel->spcvy[i])){
    102                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     91                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     92                                                count++;
     93                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     94                                                count++;
     95                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     96                                                count++;
     97                                                if (!isnan(iomodel->spcvx[i])){
     98                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     99                                                        count++;
     100                                                }
     101                                                if (!isnan(iomodel->spcvy[i])){
     102                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    103103                                                        count++;
    104104                                                }
     
    106106                                        }
    107107                                        else if ((int)iomodel->nodeonstokes[i]){ //spc pattyn nodes: 1 & 2
    108                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    109                                                 count++;
    110                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    111                                                 count++;
    112                                                 if (!isnan(iomodel->spcvx[i])){
    113                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    114                                                         count++;
    115                                                 }
    116                                                 if (!isnan(iomodel->spcvy[i])){
    117                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     108                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     109                                                count++;
     110                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     111                                                count++;
     112                                                if (!isnan(iomodel->spcvx[i])){
     113                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     114                                                        count++;
     115                                                }
     116                                                if (!isnan(iomodel->spcvy[i])){
     117                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    118118                                                        count++;
    119119                                                }
    120120                                                if (!isnan(iomodel->spcvz[i])){
    121                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,iomodel->spcvz[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     121                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,iomodel->spcvz[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    122122                                                        count++;
    123123                                                }
     
    129129                                /*If grion,pattyn spc stokes dofs: 3 4 & 5*/
    130130                                        if ((int)iomodel->nodeonmacayeal[i]){
    131                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    132                                                 count++;
    133                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    134                                                 count++;
    135                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    136                                                 count++;
    137                                                 if (!isnan(iomodel->spcvx[i])){
    138                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    139                                                         count++;
    140                                                 }
    141                                                 if (!isnan(iomodel->spcvy[i])){
    142                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     131                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     132                                                count++;
     133                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     134                                                count++;
     135                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     136                                                count++;
     137                                                if (!isnan(iomodel->spcvx[i])){
     138                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     139                                                        count++;
     140                                                }
     141                                                if (!isnan(iomodel->spcvy[i])){
     142                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    143143                                                        count++;
    144144                                                }
     
    146146                                        }
    147147                                        else if ((int)iomodel->nodeonstokes[i]){ //spc macayeal nodes: 1 & 2
    148                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    149                                                 count++;
    150                                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    151                                                 count++;
    152                                                 if (!isnan(iomodel->spcvx[i])){
    153                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    154                                                         count++;
    155                                                 }
    156                                                 if (!isnan(iomodel->spcvy[i])){
    157                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     148                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     149                                                count++;
     150                                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     151                                                count++;
     152                                                if (!isnan(iomodel->spcvx[i])){
     153                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     154                                                        count++;
     155                                                }
     156                                                if (!isnan(iomodel->spcvy[i])){
     157                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    158158                                                        count++;
    159159                                                }
    160160                                                if (!isnan(iomodel->spcvz[i])){
    161                                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,iomodel->spcvz[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     161                                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,5,iomodel->spcvz[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    162162                                                        count++;
    163163                                                }
     
    168168                        else{
    169169                                if (!isnan(iomodel->spcvx[i]) || (int)iomodel->nodeonhutter[i]){
    170                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     170                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    171171                                        count++;
    172172                                }
    173173                               
    174174                                if (!isnan(iomodel->spcvy[i]) || (int)iomodel->nodeonhutter[i]){
    175                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
     175                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
    176176                                        count++;
    177177                                }
    178178                                if (!isnan(iomodel->spcvz[i]) && ((int)iomodel->vertices_type[i]==StokesApproximationEnum ||  ((int)iomodel->vertices_type[i]==NoneApproximationEnum))){
    179                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvz[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
     179                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,3,iomodel->spcvz[i]/iomodel->yts,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
    180180                                        count++;
    181181                                }
    182182                                if ((int)iomodel->vertices_type[i]==NoneApproximationEnum){
    183                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->g*iomodel->rho_ice*(iomodel->surface[i]-iomodel->z[i])/iomodel->stokesreconditioning,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
     183                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,4,iomodel->g*iomodel->rho_ice*(iomodel->surface[i]-iomodel->z[i])/iomodel->stokesreconditioning,DiagnosticHorizAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
    184184                                        count++;
    185185                                }
  • issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHutter/CreateConstraintsDiagnosticHutter.cpp

    r8926 r9285  
    1919        /*Output*/
    2020        Constraints* constraints = NULL;
    21         Spc*    spc  = NULL;
     21        SpcStatic*    spcstatic  = NULL;
    2222
    2323        /*Recover pointer: */
     
    4444                        if (!(int)iomodel->nodeonhutter[i]){
    4545
    46                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHutterAnalysisEnum));
     46                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticHutterAnalysisEnum));
    4747                                count++;
    4848
    49                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHutterAnalysisEnum));
     49                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,0,DiagnosticHutterAnalysisEnum));
    5050                                count++;
    5151                        }
    5252                        else{
    5353                                if (!isnan(iomodel->spcvx[i])){
    54                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHutterAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
     54                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->spcvx[i]/iomodel->yts,DiagnosticHutterAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    5555                                        count++;
    5656                                }
    5757
    5858                                if (!isnan(iomodel->spcvy[i])){
    59                                         constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHutterAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
     59                                        constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,2,iomodel->spcvy[i]/iomodel->yts,DiagnosticHutterAnalysisEnum)); //add count'th spc, on node i+1, setting dof 2 to vy
    6060                                        count++;
    6161                                }
  • issm/trunk/src/c/modules/ModelProcessorx/DiagnosticVert/CreateConstraintsDiagnosticVert.cpp

    r8926 r9285  
    4343
    4444                        if ((int)iomodel->nodeonstokes[i]){
    45                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticVertAnalysisEnum)); //spc to zero as vertical velocity is done in Horiz for Stokes
     45                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,0,DiagnosticVertAnalysisEnum)); //spc to zero as vertical velocity is done in Horiz for Stokes
    4646                                count++;
    4747                        }
    4848                        else if (!isnan(iomodel->spcvz[i])){
    49                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,
     49                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,
    5050                                                                iomodel->spcvz[i]/iomodel->yts,DiagnosticVertAnalysisEnum)); //add count'th spc, on node i+1, setting dof 1 to vx.
    5151                                count++;
  • issm/trunk/src/c/modules/ModelProcessorx/Enthalpy/CreateConstraintsEnthalpy.cpp

    r8926 r9285  
    1919        /*Output*/
    2020        Constraints* constraints = NULL;
    21         Spc*    spc  = NULL;
     21        SpcStatic*    spcstatic  = NULL;
    2222
    2323        /*Recover pointer: */
     
    3636        count=0;
    3737
    38         /*Create spcs from x,y,z, as well as the spc values on those spcs: */
     38        /*Create constraints from x,y,z: */
    3939        for (i=0;i<iomodel->numberofvertices;i++){
    4040                /*keep only this partition's nodes:*/
     
    4343                        if ((int)iomodel->spctemperature[2*i]){
    4444
    45                                 constraints->AddObject(new Spc(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->heatcapacity*(iomodel->spctemperature[2*i+1]-iomodel->referencetemperature),EnthalpyAnalysisEnum));
     45                                constraints->AddObject(new SpcStatic(iomodel->constraintcounter+count+1,iomodel->nodecounter+i+1,1,iomodel->heatcapacity*(iomodel->spctemperature[2*i+1]-iomodel->referencetemperature),EnthalpyAnalysisEnum));
    4646                                count++;
    4747
    4848                        }
    49 
    50                 } //if((my_nodes[i]==1))
     49                }
    5150        }
    5251
  • issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp

    r9271 r9285  
    127127        else if (strcmp(name,"ElementResult")==0) return ElementResultEnum;
    128128        else if (strcmp(name,"ExternalResult")==0) return ExternalResultEnum;
    129         else if (strcmp(name,"Spc")==0) return SpcEnum;
    130         else if (strcmp(name,"Spct")==0) return SpctEnum;
     129        else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
     130        else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
    131131        else if (strcmp(name,"Geography")==0) return GeographyEnum;
    132132        else if (strcmp(name,"IceSheet")==0) return IceSheetEnum;
  • issm/trunk/src/c/modules/UpdateConstraintsx/UpdateConstraintsx.cpp

    r9002 r9285  
    2323        _printf_(VerboseModule(),"%s%g\n","   Updating constraints for time: ",time);
    2424       
    25         /*First, update dof constraints in nodes, using Spc constraints: */
     25        /*First, update dof constraints in nodes, using constraints: */
    2626        SpcNodesx(nodes,constraints,parameters,analysis_type);
    2727
     
    2929        NodesDofx(nodes,parameters,analysis_type);
    3030
    31 
    3231}
  • issm/trunk/src/c/objects/Constraints/Constraint.h

    r9002 r9285  
    11/*!\file:  Constraint.h
    22 * \brief abstract class for Constraint object
    3  * This class is a place holder for the Spc and Spct constraints
     3 * This class is a place holder for constraints
    44 * It is derived from Object, so DataSets can contain them.
    55 */
  • issm/trunk/src/c/objects/Constraints/SpcStatic.cpp

    r9267 r9285  
    1 /*!\file Spc.c
    2  * \brief: implementation of the Spc object
     1/*!\file SpcStatic.c
     2 * \brief: implementation of the SpcStatic object
    33 */
    44
     
    1717#include "../objects.h"
    1818
    19 /*Spc constructors and destructor*/
    20 /*FUNCTION Spc::Spc(){{{1*/
    21 Spc::Spc(){
     19/*SpcStatic constructors and destructor*/
     20/*FUNCTION SpcStatic::SpcStatic(){{{1*/
     21SpcStatic::SpcStatic(){
    2222        return;
    2323}
    2424/*}}}1*/
    25 /*FUNCTION Spc::Spc(int spc_sid,int spc_nodeid,...){{{1*/
    26 Spc::Spc(int spc_sid,int spc_nodeid, int spc_dof,double spc_value,int spc_analysis_type){
     25/*FUNCTION SpcStatic::SpcStatic(int spc_sid,int spc_nodeid,...){{{1*/
     26SpcStatic::SpcStatic(int spc_sid,int spc_nodeid, int spc_dof,double spc_value,int spc_analysis_type){
    2727
    2828        sid=spc_sid;
     
    3535}
    3636/*}}}1*/
    37 /*FUNCTION Spc::~Spc{{{1*/
    38 Spc::~Spc(){
     37/*FUNCTION SpcStatic::~SpcStatic{{{1*/
     38SpcStatic::~SpcStatic(){
    3939        return;
    4040}
     
    4242               
    4343/*Object virtual functions definitions:*/
    44 /*FUNCTION Spc::Echo {{{1*/
    45 void Spc::Echo(void){
     44/*FUNCTION SpcStatic::Echo {{{1*/
     45void SpcStatic::Echo(void){
    4646
    47         printf("Spc:\n");
     47        printf("SpcStatic:\n");
    4848        printf("   sid: %i\n",sid);
    4949        printf("   nodeid: %i\n",nodeid);
     
    5454}
    5555/*}}}1*/
    56 /*FUNCTION Spc::DeepEcho {{{1*/
    57 void Spc::DeepEcho(void){
     56/*FUNCTION SpcStatic::DeepEcho {{{1*/
     57void SpcStatic::DeepEcho(void){
    5858
    59         printf("Spc:\n");
     59        printf("SpcStatic:\n");
    6060        printf("   sid: %i\n",sid);
    6161        printf("   nodeid: %i\n",nodeid);
     
    6666}               
    6767/*}}}1*/
    68 /*FUNCTION Spc::Id {{{1*/
    69 int    Spc::Id(void){ return sid; }
     68/*FUNCTION SpcStatic::Id {{{1*/
     69int    SpcStatic::Id(void){ return sid; }
    7070/*}}}1*/
    71 /*FUNCTION Spc::MyRank {{{1*/
    72 int    Spc::MyRank(void){
     71/*FUNCTION SpcStatic::MyRank {{{1*/
     72int    SpcStatic::MyRank(void){
    7373        extern int my_rank;
    7474        return my_rank;
    7575}
    7676/*}}}1*/
    77 /*FUNCTION Spc::Marshall {{{1*/
    78 void  Spc::Marshall(char** pmarshalled_dataset){
     77/*FUNCTION SpcStatic::Marshall {{{1*/
     78void  SpcStatic::Marshall(char** pmarshalled_dataset){
    7979
    8080        char* marshalled_dataset=NULL;
     
    8484        marshalled_dataset=*pmarshalled_dataset;
    8585
    86         /*get enum type of Spc: */
    87         enum_type=SpcEnum;
     86        /*get enum type of SpcStatic: */
     87        enum_type=SpcStaticEnum;
    8888       
    8989        /*marshall enum: */
    9090        memcpy(marshalled_dataset,&enum_type,sizeof(enum_type));marshalled_dataset+=sizeof(enum_type);
    9191       
    92         /*marshall Spc data: */
     92        /*marshall SpcStatic data: */
    9393        memcpy(marshalled_dataset,&sid,sizeof(sid));marshalled_dataset+=sizeof(sid);
    9494        memcpy(marshalled_dataset,&nodeid,sizeof(nodeid));marshalled_dataset+=sizeof(nodeid);
     
    101101}
    102102/*}}}1*/
    103 /*FUNCTION Spc::MarshallSize {{{1*/
    104 int   Spc::MarshallSize(){
     103/*FUNCTION SpcStatic::MarshallSize {{{1*/
     104int   SpcStatic::MarshallSize(){
    105105
    106106        return sizeof(sid)
     
    112112}
    113113/*}}}1*/
    114 /*FUNCTION Spc::Demarshall {{{1*/
    115 void  Spc::Demarshall(char** pmarshalled_dataset){
     114/*FUNCTION SpcStatic::Demarshall {{{1*/
     115void  SpcStatic::Demarshall(char** pmarshalled_dataset){
    116116
    117117        char* marshalled_dataset=NULL;
     
    134134}
    135135/*}}}1*/
    136 /*FUNCTION Spc::Enum {{{1*/
    137 int Spc::Enum(void){
     136/*FUNCTION SpcStatic::Enum {{{1*/
     137int SpcStatic::Enum(void){
    138138
    139         return SpcEnum;
     139        return SpcStaticEnum;
    140140
    141141}
    142142/*}}}1*/
    143 /*FUNCTION Spc::copy {{{1*/
    144 Object* Spc::copy() {
    145         return new Spc(*this);
     143/*FUNCTION SpcStatic::copy {{{1*/
     144Object* SpcStatic::copy() {
     145        return new SpcStatic(*this);
    146146}
    147147/*}}}1*/
    148148
    149149/*Constraint virtual functions definitions: */
    150 /*FUNCTION Spc::InAnalysis{{{1*/
    151 bool Spc::InAnalysis(int in_analysis_type){
     150/*FUNCTION SpcStatic::InAnalysis{{{1*/
     151bool SpcStatic::InAnalysis(int in_analysis_type){
    152152        if (in_analysis_type==this->analysis_type) return true;
    153153        else return false;
    154154}
    155155/*}}}*/
    156 /*FUNCTION Spc::ConstrainNode{{{1*/
    157 void Spc::ConstrainNode(Nodes* nodes,Parameters* parameters){
     156/*FUNCTION SpcStatic::ConstrainNode{{{1*/
     157void SpcStatic::ConstrainNode(Nodes* nodes,Parameters* parameters){
    158158
    159159        Node* node=NULL;
    160160
    161         /*Chase through nodes and find the node to which this Spc applys: */
     161        /*Chase through nodes and find the node to which this SpcStatic applys: */
    162162        node=(Node*)nodes->GetObjectById(NULL,nodeid);
    163163
     
    169169/*}}}*/
    170170
    171 /*Spc functions*/
    172 /*FUNCTION Spc::GetDof {{{1*/
    173 int Spc::GetDof(){
     171/*SpcStatic functions*/
     172/*FUNCTION SpcStatic::GetDof {{{1*/
     173int SpcStatic::GetDof(){
    174174        return dof;
    175175}
    176176/*}}}1*/
    177 /*FUNCTION Spc::GetNodeId {{{1*/
    178 int   Spc::GetNodeId(){
     177/*FUNCTION SpcStatic::GetNodeId {{{1*/
     178int   SpcStatic::GetNodeId(){
    179179       
    180180        return nodeid;
    181181}
    182182/*}}}1*/
    183 /*FUNCTION Spc::GetValue {{{1*/
    184 double Spc::GetValue(){
     183/*FUNCTION SpcStatic::GetValue {{{1*/
     184double SpcStatic::GetValue(){
     185        _assert_(!isnan(value));
    185186        return value;
    186187}
  • issm/trunk/src/c/objects/Constraints/SpcStatic.h

    r9267 r9285  
    1 /*!\file Spc.h
     1/*!\file SpcStatic.h
    22 * \brief: header file for spc object
    33 */
    44
    5 #ifndef _SPC_H_
    6 #define _SPC_H_
     5#ifndef _SPCStatic_H_
     6#define _SPCStatic_H_
    77
    88/*Headers:*/
     
    1212/*}}}*/
    1313
    14 class Spc: public Constraint{
     14class SpcStatic: public Constraint{
    1515
    1616        private:
     
    2323        public:
    2424
    25                 /*Spc constructors, destructors:{{{1*/
    26                 Spc();
    27                 Spc(int sid,int nodeid, int dof,double value,int analysis_type);
    28                 ~Spc();
     25                /*SpcStatic constructors, destructors:{{{1*/
     26                SpcStatic();
     27                SpcStatic(int sid,int nodeid, int dof,double value,int analysis_type);
     28                ~SpcStatic();
    2929                /*}}}*/
    3030                /*Object virtual functions definitions:{{{1 */
     
    4343                bool   InAnalysis(int analysis_type);
    4444                /*}}}*/
    45                 /*Spc management:{{{1 */
     45                /*SpcStatic management:{{{1 */
    4646                int    GetNodeId();
    4747                int    GetDof();
     
    5151};
    5252
    53 #endif  /* _SPC_H_ */
     53#endif  /* _SPCStatic_H_*/
  • issm/trunk/src/c/objects/Constraints/SpcTransient.cpp

    r9267 r9285  
    1 /*!\file Spct.c
    2  * \brief: implementation of the Spct object
     1/*!\file SpcTransient.c
     2 * \brief: implementation of the SpcTransient object
    33 */
    44
     
    1717#include "../objects.h"
    1818
    19 /*Spct constructors and destructor*/
    20 /*FUNCTION Spct::Spct(){{{1*/
    21 Spct::Spct(){
     19/*SpcTransient constructors and destructor*/
     20/*FUNCTION SpcTransient::SpcTransient(){{{1*/
     21SpcTransient::SpcTransient(){
    2222        sid=-1;
    2323        nodeid=-1;
     
    3030}
    3131/*}}}1*/
    32 /*FUNCTION Spct::Spct(int spc_sid,int spc_nodeid,...){{{1*/
    33 Spct::Spct(int spc_sid,int spc_nodeid, int spc_dof,int spc_nsteps, double* spc_times, double* spc_values,int spc_analysis_type){
     32/*FUNCTION SpcTransient::SpcTransient(int spc_sid,int spc_nodeid,...){{{1*/
     33SpcTransient::SpcTransient(int spc_sid,int spc_nodeid, int spc_dof,int spc_nsteps, double* spc_times, double* spc_values,int spc_analysis_type){
    3434
    3535        sid=spc_sid;
     
    4747}
    4848/*}}}1*/
    49 /*FUNCTION Spct::~Spct{{{1*/
    50 Spct::~Spct(){
     49/*FUNCTION SpcTransient::~SpcTransient{{{1*/
     50SpcTransient::~SpcTransient(){
    5151        xfree((void**)&times);
    5252        xfree((void**)&values);
     
    5656               
    5757/*Object virtual functions definitions:*/
    58 /*FUNCTION Spct::Echo {{{1*/
    59 void Spct::Echo(void){
     58/*FUNCTION SpcTransient::Echo {{{1*/
     59void SpcTransient::Echo(void){
    6060
    6161        int i;
    62         printf("Spct:\n");
     62        printf("SpcTransient:\n");
    6363        printf("   sid: %i\n",sid);
    6464        printf("   nodeid: %i\n",nodeid);
     
    7373}
    7474/*}}}1*/
    75 /*FUNCTION Spct::DeepEcho {{{1*/
    76 void Spct::DeepEcho(void){
     75/*FUNCTION SpcTransient::DeepEcho {{{1*/
     76void SpcTransient::DeepEcho(void){
    7777        this->Echo();
    7878}               
    7979/*}}}1*/
    80 /*FUNCTION Spct::Id {{{1*/
    81 int    Spct::Id(void){ return sid; }
    82 /*}}}1*/
    83 /*FUNCTION Spct::MyRank {{{1*/
    84 int    Spct::MyRank(void){
     80/*FUNCTION SpcTransient::Id {{{1*/
     81int    SpcTransient::Id(void){ return sid; }
     82/*}}}1*/
     83/*FUNCTION SpcTransient::MyRank {{{1*/
     84int    SpcTransient::MyRank(void){
    8585        extern int my_rank;
    8686        return my_rank;
    8787}
    8888/*}}}1*/
    89 /*FUNCTION Spct::Marshall {{{1*/
    90 void  Spct::Marshall(char** pmarshalled_dataset){
     89/*FUNCTION SpcTransient::Marshall {{{1*/
     90void  SpcTransient::Marshall(char** pmarshalled_dataset){
    9191
    9292        char* marshalled_dataset=NULL;
     
    9696        marshalled_dataset=*pmarshalled_dataset;
    9797
    98         /*get enum type of Spct: */
    99         enum_type=SpctEnum;
     98        /*get enum type of SpcTransient: */
     99        enum_type=SpcTransientEnum;
    100100       
    101101        /*marshall enum: */
    102102        memcpy(marshalled_dataset,&enum_type,sizeof(enum_type));marshalled_dataset+=sizeof(enum_type);
    103103       
    104         /*marshall Spct data: */
     104        /*marshall SpcTransient data: */
    105105        memcpy(marshalled_dataset,&sid,sizeof(sid));marshalled_dataset+=sizeof(sid);
    106106        memcpy(marshalled_dataset,&nodeid,sizeof(nodeid));marshalled_dataset+=sizeof(nodeid);
     
    117117}
    118118/*}}}1*/
    119 /*FUNCTION Spct::MarshallSize {{{1*/
    120 int   Spct::MarshallSize(){
     119/*FUNCTION SpcTransient::MarshallSize {{{1*/
     120int   SpcTransient::MarshallSize(){
    121121
    122122        return sizeof(sid)
     
    129129}
    130130/*}}}1*/
    131 /*FUNCTION Spct::Demarshall {{{1*/
    132 void  Spct::Demarshall(char** pmarshalled_dataset){
     131/*FUNCTION SpcTransient::Demarshall {{{1*/
     132void  SpcTransient::Demarshall(char** pmarshalled_dataset){
    133133
    134134        char* marshalled_dataset=NULL;
     
    157157}
    158158/*}}}1*/
    159 /*FUNCTION Spct::Enum {{{1*/
    160 int Spct::Enum(void){
    161 
    162         return SpctEnum;
    163 
    164 }
    165 /*}}}1*/
    166 /*FUNCTION Spct::copy {{{1*/
    167 Object* Spct::copy() {
    168         return new Spct(sid,nodeid,dof,nsteps,times,values,analysis_type);
     159/*FUNCTION SpcTransient::Enum {{{1*/
     160int SpcTransient::Enum(void){
     161
     162        return SpcTransientEnum;
     163
     164}
     165/*}}}1*/
     166/*FUNCTION SpcTransient::copy {{{1*/
     167Object* SpcTransient::copy() {
     168        return new SpcTransient(sid,nodeid,dof,nsteps,times,values,analysis_type);
    169169}
    170170/*}}}1*/
    171171
    172172/*Constraint virtual functions definitions:*/
    173 /*FUNCTION Spct::InAnalysis{{{1*/
    174 bool Spct::InAnalysis(int in_analysis_type){
     173/*FUNCTION SpcTransient::InAnalysis{{{1*/
     174bool SpcTransient::InAnalysis(int in_analysis_type){
    175175       
    176176        if (in_analysis_type==this->analysis_type) return true;
     
    178178}
    179179/*}}}*/
    180 /*FUNCTION Spct::ConstrainNode{{{1*/
    181 void Spct::ConstrainNode(Nodes* nodes,Parameters* parameters){
     180/*FUNCTION SpcTransient::ConstrainNode{{{1*/
     181void SpcTransient::ConstrainNode(Nodes* nodes,Parameters* parameters){
    182182
    183183        Node* node=NULL;
     
    188188        bool   found=false;
    189189
    190         /*Chase through nodes and find the node to which this Spct applys: */
     190        /*Chase through nodes and find the node to which this SpcTransient applys: */
    191191        node=(Node*)nodes->GetObjectById(NULL,nodeid);
    192192       
     
    227227/*}}}*/
    228228
    229 /*Spct functions*/
    230 /*FUNCTION Spct::GetDof {{{1*/
    231 int Spct::GetDof(){
     229/*SpcTransient functions*/
     230/*FUNCTION SpcTransient::GetDof {{{1*/
     231int SpcTransient::GetDof(){
    232232        return dof;
    233233}
    234234/*}}}1*/
    235 /*FUNCTION Spct::GetNodeId {{{1*/
    236 int   Spct::GetNodeId(){
     235/*FUNCTION SpcTransient::GetNodeId {{{1*/
     236int   SpcTransient::GetNodeId(){
    237237       
    238238        return nodeid;
    239239}
    240240/*}}}1*/
    241 /*FUNCTION Spct::GetValue {{{1*/
    242 double Spct::GetValue(){
     241/*FUNCTION SpcTransient::GetValue {{{1*/
     242double SpcTransient::GetValue(){
    243243        return values[0];
    244244}
  • issm/trunk/src/c/objects/Constraints/SpcTransient.h

    r9267 r9285  
    1 /*!\file Spct.h
     1/*!\file SpcTransient.h
    22 * \brief: header file for spc object
    33 */
    44
    5 #ifndef _SPCT_H_
    6 #define _SPCT_H_
     5#ifndef _SPCTRANSIENT_H_
     6#define _SPCTRANSIENT_H_
    77
    88/*Headers:*/
     
    1212/*}}}*/
    1313
    14 class Spct: public Constraint{
     14class SpcTransient: public Constraint{
    1515
    1616        private:
     
    2525        public:
    2626
    27                 /*Spct constructors, destructors:{{{1*/
    28                 Spct();
    29                 Spct(int sid,int nodeid, int dof,int nsteps, double* times, double* values,int analysis_type);
    30                 ~Spct();
     27                /*SpcTransient constructors, destructors:{{{1*/
     28                SpcTransient();
     29                SpcTransient(int sid,int nodeid, int dof,int nsteps, double* times, double* values,int analysis_type);
     30                ~SpcTransient();
    3131                /*}}}*/
    3232                /*Object virtual functions definitions:{{{1 */
     
    4545                bool   InAnalysis(int analysis_type);
    4646                /*}}}*/
    47                 /*Spct management:{{{1 */
     47                /*SpcTransient management:{{{1 */
    4848                int    GetNodeId();
    4949                int    GetDof();
     
    5353};
    5454
    55 #endif  /* _SPCT_H_ */
     55#endif  /* _SPCTRANSIENT_H_ */
  • issm/trunk/src/c/objects/Node.cpp

    r9218 r9285  
    9999        /*Diagnostic Hutter*/
    100100        if (analysis_type==DiagnosticHutterAnalysisEnum){
    101                 /*Spc all nodes that are not Hutter*/
     101                /*Constrain all nodes that are not Hutter*/
    102102                if (!iomodel->nodeonhutter) _error_("iomodel->nodeonhutter is NULL");
    103103                if (!iomodel->nodeonhutter[io_index]){
     
    576576                        if(this->indexing.s_set[i]){
    577577                                values[count]=this->indexing.svalues[i];
     578                                _assert_(!isnan(values[count]));
    578579                                count++;
    579580                        }
  • issm/trunk/src/c/objects/objects.h

    r9002 r9285  
    2121/*Constraints: */
    2222#include "./Constraints/Constraint.h"
    23 #include "./Constraints/Spc.h"
    24 #include "./Constraints/Spct.h"
     23#include "./Constraints/SpcStatic.h"
     24#include "./Constraints/SpcTransient.h"
    2525
    2626/*Gauss*/
  • issm/trunk/src/c/solvers/solver_nonlinear.cpp

    r9277 r9285  
    3535        femmodel->parameters->FindParam(&max_nonlinear_iterations,MaxNonlinearIterationsEnum);
    3636        femmodel->parameters->FindParam(&configuration_type,ConfigurationTypeEnum);
    37         //UpdateConstraintsx(femmodel->nodes,femmodel->constraints,femmodel->parameters);
     37        UpdateConstraintsx(femmodel->nodes,femmodel->constraints,femmodel->parameters);
    3838
    3939        /*Were loads requested as output? : */
Note: See TracChangeset for help on using the changeset viewer.