[16134] | 1 | Index: ../trunk-jpl/src/c/classes/Elements/Penta.cpp
|
---|
| 2 | ===================================================================
|
---|
| 3 | --- ../trunk-jpl/src/c/classes/Elements/Penta.cpp (revision 15768)
|
---|
| 4 | +++ ../trunk-jpl/src/c/classes/Elements/Penta.cpp (revision 15769)
|
---|
| 5 | @@ -6875,10 +6875,9 @@
|
---|
| 6 | ElementMatrix* Penta::CreateKMatrixCouplingSSAFSViscous(void){
|
---|
| 7 |
|
---|
| 8 | /*Constants*/
|
---|
| 9 | - const int numdofm = NDOF2 *NUMVERTICES2D;
|
---|
| 10 | - const int numdofs = NDOF4 *NUMVERTICES;
|
---|
| 11 | - const int numdofstotal = NDOF4 *NUMVERTICES + NDOF3;
|
---|
| 12 | - const int numdoftotal = 2 *numdofm+numdofstotal;
|
---|
| 13 | + const int numdofm = NDOF2 *NUMVERTICES2D;
|
---|
| 14 | + const int numdofs = NDOF4 *NUMVERTICES + NDOF3;
|
---|
| 15 | + const int numdoftotal = 2 *numdofm+numdofs;
|
---|
| 16 |
|
---|
| 17 | /*Intermediaries */
|
---|
| 18 | int i,j;
|
---|
| 19 | @@ -6886,17 +6885,17 @@
|
---|
| 20 | IssmDouble viscosity,FSreconditioning; //viscosity
|
---|
| 21 | IssmDouble epsilon[6]; /* epsilon=[exx,eyy,exy,exz,eyz];*/
|
---|
| 22 | IssmDouble xyz_list[NUMVERTICES][3];
|
---|
| 23 | - IssmDouble B[4][numdofstotal];
|
---|
| 24 | + IssmDouble B[4][numdofs];
|
---|
| 25 | IssmDouble Bprime[4][numdofm];
|
---|
| 26 | IssmDouble B2[3][numdofm];
|
---|
| 27 | - IssmDouble Bprime2[3][numdofstotal];
|
---|
| 28 | + IssmDouble Bprime2[3][numdofs];
|
---|
| 29 | IssmDouble D[4][4]={0.0}; // material matrix, simple scalar matrix.
|
---|
| 30 | IssmDouble D2[3][3]={0.0}; // material matrix, simple scalar matrix.
|
---|
| 31 | IssmDouble D_scalar;
|
---|
| 32 | IssmDouble Ke_gg[numdofs][numdofm]={0.0}; //local element stiffness matrix
|
---|
| 33 | IssmDouble Ke_gg2[numdofm][numdofs]={0.0}; //local element stiffness matrix
|
---|
| 34 | - IssmDouble Ke_gg_gaussian[numdofstotal][numdofm]; //stiffness matrix evaluated at the gaussian point.
|
---|
| 35 | - IssmDouble Ke_gg_gaussian2[numdofm][numdofstotal]; //stiffness matrix evaluated at the gaussian point.
|
---|
| 36 | + IssmDouble Ke_gg_gaussian[numdofs][numdofm]; //stiffness matrix evaluated at the gaussian point.
|
---|
| 37 | + IssmDouble Ke_gg_gaussian2[numdofm][numdofs]; //stiffness matrix evaluated at the gaussian point.
|
---|
| 38 | GaussPenta *gauss=NULL;
|
---|
| 39 | GaussTria *gauss_tria=NULL;
|
---|
| 40 | Node *node_list[20];
|
---|
| 41 | @@ -6960,21 +6959,21 @@
|
---|
| 42 | D[3][3]=-gauss->weight*Jdet*FSreconditioning;
|
---|
| 43 | for (i=0;i<3;i++) D2[i][i]=D_scalar;
|
---|
| 44 |
|
---|
| 45 | - TripleMultiply( &B[0][0],4,numdofstotal,1,
|
---|
| 46 | + TripleMultiply( &B[0][0],4,numdofs,1,
|
---|
| 47 | &D[0][0],4,4,0,
|
---|
| 48 | &Bprime[0][0],4,numdofm,0,
|
---|
| 49 | &Ke_gg_gaussian[0][0],0);
|
---|
| 50 |
|
---|
| 51 | TripleMultiply( &B2[0][0],3,numdofm,1,
|
---|
| 52 | &D2[0][0],3,3,0,
|
---|
| 53 | - &Bprime2[0][0],3,numdofstotal,0,
|
---|
| 54 | + &Bprime2[0][0],3,numdofs,0,
|
---|
| 55 | &Ke_gg_gaussian2[0][0],0);
|
---|
| 56 |
|
---|
| 57 | - for( i=0; i<numdofstotal; i++) for(j=0;j<numdofm; j++) Ke_gg[i][j]+=Ke_gg_gaussian[i][j];
|
---|
| 58 | - for( i=0; i<numdofm; i++) for(j=0;j<numdofstotal; j++) Ke_gg2[i][j]+=Ke_gg_gaussian2[i][j];
|
---|
| 59 | + for( i=0; i<numdofs; i++) for(j=0;j<numdofm; j++) Ke_gg[i][j]+=Ke_gg_gaussian[i][j];
|
---|
| 60 | + for( i=0; i<numdofm; i++) for(j=0;j<numdofs; j++) Ke_gg2[i][j]+=Ke_gg_gaussian2[i][j];
|
---|
| 61 | }
|
---|
| 62 | - for(i=0;i<numdofs;i++) for(j=0;j<numdofm;j++) Ke->values[(i+2*numdofm)*numdoftotal+j]+=Ke_gg[i][j];
|
---|
| 63 | - for(i=0;i<numdofm;i++) for(j=0;j<numdofs;j++) Ke->values[i*numdoftotal+(j+2*numdofm)]+=Ke_gg2[i][j];
|
---|
| 64 | + for(i=0;i<numdofs;i++) for(j=0;j<numdofm;j++) Ke->values[(i+2*numdofm)*numdoftotal+j]+=Ke_gg[i][j];
|
---|
| 65 | + for(i=0;i<numdofm;i++) for(j=0;j<numdofs;j++) Ke->values[i*numdoftotal+(j+2*numdofm)]+=Ke_gg2[i][j];
|
---|
| 66 |
|
---|
| 67 | /*Transform Coordinate System*/
|
---|
| 68 | TransformStiffnessMatrixCoord(Ke,node_list,numnodes,cs_list);
|
---|