Changeset 5806


Ignore:
Timestamp:
09/14/10 15:49:24 (15 years ago)
Author:
seroussi
Message:

modifications for Pattyn/Stokes

File:
1 edited

Legend:

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

    r5803 r5806  
    18661866                                }
    18671867                        }
     1868                        if(*(iomodel->elements_type+index)==PattynStokesApproximationEnum){
     1869                                /*Create VzPattyn and VzStokes Enums*/
     1870                                if(iomodel->vz && iomodel->gridonstokes){
     1871                                        for(i=0;i<6;i++) nodeinputs[i]=iomodel->vz[penta_vertex_ids[i]-1]/iomodel->yts*iomodel->gridonstokes[penta_vertex_ids[i]-1];
     1872                                        this->inputs->AddInput(new PentaVertexInput(VzStokesEnum,nodeinputs));
     1873                                        for(i=0;i<6;i++) nodeinputs[i]=iomodel->vz[penta_vertex_ids[i]-1]/iomodel->yts*(1-iomodel->gridonstokes[penta_vertex_ids[i]-1]);
     1874                                        this->inputs->AddInput(new PentaVertexInput(VzPattynEnum,nodeinputs));
     1875                                }
     1876                                else{
     1877                                        for(i=0;i<6;i++)nodeinputs[i]=0;
     1878                                        this->inputs->AddInput(new PentaVertexInput(VzStokesEnum,nodeinputs));
     1879                                        this->inputs->AddInput(new PentaVertexInput(VzPattynEnum,nodeinputs));
     1880                                }
     1881                        }
    18681882                        break;
    18691883
     
    18901904                else if (*(iomodel->elements_type+index)==StokesApproximationEnum){
    18911905                        this->inputs->AddInput(new IntInput(ApproximationEnum,StokesApproximationEnum));
     1906                }
     1907                else if (*(iomodel->elements_type+index)==PattynStokesApproximationEnum){
     1908                        this->inputs->AddInput(new IntInput(ApproximationEnum,PattynStokesApproximationEnum));
    18921909                }
    18931910                else if (*(iomodel->elements_type+index)==NoneApproximationEnum){
     
    49214938        int         approximation;
    49224939
     4940        /*Get the approximation and do nothing if the element in Stokes or None*/
     4941        inputs->GetParameterValue(&approximation,ApproximationEnum);
     4942        if(approximation==StokesApproximationEnum || approximation==NoneApproximationEnum){
     4943                return;
     4944        }
     4945
    49234946        /*Get dof list: */
    49244947        GetDofList(&doflist,NoneApproximationEnum,GsetEnum);
     
    49264949        /*Get node data: */
    49274950        GetVerticesCoordinates(&xyz_list[0][0], nodes, NUMVERTICES);
    4928         inputs->GetParameterValue(&approximation,ApproximationEnum);
    49294951
    49304952        /*Use the dof list to index into the solution vector: */
Note: See TracChangeset for help on using the changeset viewer.