Changeset 3944


Ignore:
Timestamp:
05/25/10 15:04:07 (15 years ago)
Author:
Mathieu Morlighem
Message:

some ASSERT (please DO NOT REMOVE) and better default velocities

Location:
issm/trunk/src/c/objects/Elements
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/objects/Elements/Beam.cpp

    r3943 r3944  
    5959
    6060        /*hooks: */
     61        ISSMASSERT(iomodel->uppernodes);
    6162        beam_matice_id=index+1; //refers to the corresponding material property card
    6263        beam_matpar_id=iomodel->numberofvertices2d*(iomodel->numlayers-1)+1;//refers to the corresponding matpar property card
     
    152153        this->parameters=NULL;
    153154
    154 
    155155}
    156156/*}}}*/
  • issm/trunk/src/c/objects/Elements/Sing.cpp

    r3938 r3944  
    9090                this->inputs->AddInput(new SingVertexInput(VzOldEnum,iomodel->vz_obs[i]));
    9191        }
    92 
    9392
    9493        //this->parameters: we still can't point to it, it may not even exist. Configure will handle this.
  • issm/trunk/src/c/objects/Elements/Tria.cpp

    r3938 r3944  
    6262        else{
    6363                /*Continuous Galerkin*/
     64                ISSMASSERT(iomodel->elements);
    6465                for(i=0;i<3;i++){
    6566                        tria_node_ids[i]=(int)*(iomodel->elements+3*index+i); //ids for vertices are in the elements array from Matlab
     
    152153                this->inputs->AddInput(new TriaVertexInput(WeightsEnum,nodeinputs));
    153154        }
    154         /*Default vx,vy and vz?:*/
    155         if(!iomodel->vx && iomodel->vx_obs){
    156                 for(i=0;i<3;i++)nodeinputs[i]=iomodel->vx_obs[tria_node_ids[i]-1]/iomodel->yts;
     155
     156        /*default vx,vy and vz: either observation or 0 */
     157        if(!iomodel->vx){
     158                if (iomodel->vx_obs) for(i=0;i<3;i++)nodeinputs[i]=iomodel->vx_obs[tria_node_ids[i]-1]/iomodel->yts;
     159                else                 for(i=0;i<3;i++)nodeinputs[i]=0;
    157160                this->inputs->AddInput(new TriaVertexInput(VxEnum,nodeinputs));
    158161                this->inputs->AddInput(new TriaVertexInput(VxOldEnum,nodeinputs));
    159162        }
    160         if(!iomodel->vy && iomodel->vy_obs){
    161                 for(i=0;i<3;i++)nodeinputs[i]=iomodel->vy_obs[tria_node_ids[i]-1]/iomodel->yts;
     163        if(!iomodel->vy){
     164                if (iomodel->vy_obs) for(i=0;i<3;i++)nodeinputs[i]=iomodel->vy_obs[tria_node_ids[i]-1]/iomodel->yts;
     165                else                 for(i=0;i<3;i++)nodeinputs[i]=0;
    162166                this->inputs->AddInput(new TriaVertexInput(VyEnum,nodeinputs));
    163167                this->inputs->AddInput(new TriaVertexInput(VyOldEnum,nodeinputs));
    164168        }
    165         if(!iomodel->vz && iomodel->vz_obs){
    166                 for(i=0;i<3;i++)nodeinputs[i]=iomodel->vz_obs[tria_node_ids[i]-1]/iomodel->yts;
     169        if(!iomodel->vz){
     170                if (iomodel->vz_obs) for(i=0;i<3;i++)nodeinputs[i]=iomodel->vz_obs[tria_node_ids[i]-1]/iomodel->yts;
     171                else                 for(i=0;i<3;i++)nodeinputs[i]=0;
    167172                this->inputs->AddInput(new TriaVertexInput(VzEnum,nodeinputs));
    168173                this->inputs->AddInput(new TriaVertexInput(VzOldEnum,nodeinputs));
Note: See TracChangeset for help on using the changeset viewer.