Changeset 15306


Ignore:
Timestamp:
06/21/13 16:39:07 (12 years ago)
Author:
Mathieu Morlighem
Message:

FIX: matrix allocation for 2d/3d couplings. nodes at the base are connected with nodes of other layers

Location:
issm/trunk-jpl/src/c
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r15305 r15306  
    27752775                                default: _error_("not supported");
    27762776                        }
     2777                }
     2778        }
     2779
     2780        /*Special case: 2d/3d coupling, the node of this element might be connected
     2781         *to the basal element*/
     2782        int analysis_type,approximation,numlayers;
     2783        parameters->FindParam(&analysis_type,AnalysisTypeEnum);
     2784        if(analysis_type==DiagnosticHorizAnalysisEnum){
     2785                inputs->GetInputValue(&approximation,ApproximationEnum);
     2786                if(approximation==MacAyealPattynApproximationEnum || approximation==MacAyealStokesApproximationEnum){
     2787                        parameters->FindParam(&numlayers,MeshNumberoflayersEnum);
     2788                        o_nz += numlayers*3;
     2789                        d_nz += numlayers*3;
    27772790                }
    27782791        }
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp

    r15152 r15306  
    8686        parameters->AddObject(iomodel->CopyConstantObject(MeshNumberofelementsEnum));
    8787        parameters->AddObject(iomodel->CopyConstantObject(MeshNumberofverticesEnum));
     88        parameters->AddObject(iomodel->CopyConstantObject(MeshNumberoflayersEnum));
    8889        parameters->AddObject(iomodel->CopyConstantObject(SettingsIoGatherEnum));
    8990        parameters->AddObject(iomodel->CopyConstantObject(SettingsResultsAsPatchesEnum));
  • issm/trunk-jpl/src/c/toolkits/petsc/objects/PetscMat.cpp

    r15238 r15306  
    179179        PetscErrorCode ierr;
    180180        ierr = MatSetValues(this->matrix,m,idxm,n,idxn,values,ISSMToPetscInsertMode(mode));
    181         //if(ierr) _error_("PETSC's MatSetValues reported an error");
     181        if(ierr) _error_("PETSC's MatSetValues reported an error");
    182182
    183183}
Note: See TracChangeset for help on using the changeset viewer.