Changeset 16976
- Timestamp:
- 11/29/13 10:34:32 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp
r16973 r16976 3215 3215 3216 3216 /*compute all stiffness matrices for this element*/ 3217 printf("-------------- file: StressbalanceAnalysis.cpp line: %i\n",__LINE__); 3217 3218 ElementMatrix* Ke1=CreateKMatrixFS(element); 3219 printf("-------------- file: StressbalanceAnalysis.cpp line: %i\n",__LINE__); 3218 3220 int indices[3]={18,19,20}; 3219 3221 Ke1->StaticCondensation(3,&indices[0]); 3222 printf("-------------- file: StressbalanceAnalysis.cpp line: %i\n",__LINE__); 3220 3223 int init = element->FiniteElement(); 3221 3224 element->SetTemporaryElementType(P1Enum); 3225 printf("-------------- file: StressbalanceAnalysis.cpp line: %i\n",__LINE__); 3222 3226 ElementMatrix* Ke2=CreateKMatrixSSA3d(element); 3227 printf("-------------- file: StressbalanceAnalysis.cpp line: %i\n",__LINE__); 3223 3228 element->SetTemporaryElementType(init); 3224 3229 ElementMatrix* Ke3=CreateKMatrixCouplingSSAFS(element); 3230 printf("-------------- file: StressbalanceAnalysis.cpp line: %i\n",__LINE__); 3225 3231 ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2,Ke3); 3226 3232 … … 3536 3542 } 3537 3543 3538 ElementMatrix* Ke1=element->NewElementMatrix (SSAApproximationEnum);3544 ElementMatrix* Ke1=element->NewElementMatrixCoupling(6,SSAApproximationEnum); 3539 3545 ElementMatrix* Ke2=element->NewElementMatrix(FSvelocityEnum); 3540 3546 ElementMatrix* Ke=new ElementMatrix(Ke1,Ke2); … … 3642 3648 Node **node_list = xNew<Node*>(2*vnumnodes-1+pnumnodes); 3643 3649 for(i=0;i<vnumnodes-1;i++){ 3644 node_list[ vnumnodes+pnumnodes+i] = pentabase->GetNode(i);3645 cs_list[ vnumnodes+pnumnodes+i] = XYEnum;3650 node_list[i] = pentabase->GetNode(i); 3651 cs_list[i] = XYEnum; 3646 3652 } 3647 3653 for(i=0;i<vnumnodes;i++){ 3648 node_list[i ] = element->GetNode(i);3649 cs_list[i ] = XYZEnum;3654 node_list[i+vnumnodes-1] = element->GetNode(i); 3655 cs_list[i+vnumnodes-1] = XYZEnum; 3650 3656 } 3651 3657 for(i=0;i<pnumnodes;i++){ 3652 node_list[ vnumnodes+i] = element->GetNode(vnumnodes+i);3653 cs_list[ vnumnodes+i] = PressureEnum;3658 node_list[2*vnumnodes-1+i] = element->GetNode(vnumnodes+i); 3659 cs_list[2*vnumnodes-1+i] = PressureEnum; 3654 3660 } 3655 3661 3656 3662 /*Initialize Element matrix and return if necessary*/ 3657 ElementMatrix* Ke1= element->NewElementMatrix(FSvelocityEnum);3658 ElementMatrix* Ke2= pentabase->NewElementMatrixCoupling(6,SSAApproximationEnum);3663 ElementMatrix* Ke1=pentabase->NewElementMatrixCoupling(6,SSAApproximationEnum); 3664 ElementMatrix* Ke2=element->NewElementMatrix(FSvelocityEnum); 3659 3665 ElementMatrix* Ke =new ElementMatrix(Ke1,Ke2); 3660 3666 delete Ke1; delete Ke2; … … 3699 3705 3700 3706 } 3701 for(i=0;i<numdofs;i++) for(j=0;j<numdofm;j++) Ke->values[ i*numdoftotal+j+numdofs]+=Ke_gg[i][j];3702 for(i=0;i<numdofm;i++) for(j=0;j<numdofs;j++) Ke->values[ (i+numdofs)*numdoftotal+j]+=Ke_gg2[i][j];3707 for(i=0;i<numdofs;i++) for(j=0;j<numdofm;j++) Ke->values[(i+2*numdofm)*numdoftotal+j]+=Ke_gg[i][j]; 3708 for(i=0;i<numdofm;i++) for(j=0;j<numdofs;j++) Ke->values[i*numdoftotal+(j+2*numdofm)]+=Ke_gg2[i][j]; 3703 3709 3704 3710 /*Transform Coordinate System*/
Note:
See TracChangeset
for help on using the changeset viewer.