Changeset 6420
- Timestamp:
- 10/26/10 07:39:38 (15 years ago)
- Location:
- issm/trunk/src/c/objects/Elements
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/objects/Elements/Penta.cpp
r6413 r6420 3744 3744 vx[i+3]=vx[i]; 3745 3745 vy[i+3]=vy[i]; 3746 3747 /*Check solution*/ 3748 if(isnan(vx[i])) _error_("NaN found in solution vector"); 3749 if(isnan(vy[i])) _error_("NaN found in solution vector"); 3746 3750 } 3747 3751 … … 3841 3845 vx[i]=macayeal_values[i*NDOF2+0]+pattyn_values[i*NDOF2+0]; 3842 3846 vy[i]=macayeal_values[i*NDOF2+1]+pattyn_values[i*NDOF2+1]; 3847 3848 /*Check solution*/ 3849 if(isnan(vx[i])) _error_("NaN found in solution vector"); 3850 if(isnan(vy[i])) _error_("NaN found in solution vector"); 3843 3851 } 3844 3852 … … 3934 3942 vzstokes[i]=stokes_values[i*NDOF4+2]; 3935 3943 pressure[i]=stokes_values[i*NDOF4+3]*stokesreconditioning; 3944 3945 /*Check solution*/ 3946 if(isnan(vx[i])) _error_("NaN found in solution vector"); 3947 if(isnan(vy[i])) _error_("NaN found in solution vector"); 3948 if(isnan(vzstokes[i])) _error_("NaN found in solution vector"); 3949 if(isnan(pressure[i])) _error_("NaN found in solution vector"); 3936 3950 } 3937 3951 … … 4006 4020 vx[i]=values[i*NDOF2+0]; 4007 4021 vy[i]=values[i*NDOF2+1]; 4022 4023 /*Check solution*/ 4024 if(isnan(vx[i])) _error_("NaN found in solution vector"); 4025 if(isnan(vy[i])) _error_("NaN found in solution vector"); 4008 4026 } 4009 4027 … … 4092 4110 vzstokes[i]=stokes_values[i*NDOF4+2]; 4093 4111 pressure[i]=stokes_values[i*NDOF4+3]*stokesreconditioning; 4112 4113 /*Check solution*/ 4114 if(isnan(vx[i])) _error_("NaN found in solution vector"); 4115 if(isnan(vy[i])) _error_("NaN found in solution vector"); 4116 if(isnan(vzstokes[i])) _error_("NaN found in solution vector"); 4117 if(isnan(pressure[i])) _error_("NaN found in solution vector"); 4094 4118 } 4095 4119 … … 4164 4188 vx[i]=values[i*NDOF2+0]; 4165 4189 vy[i]=values[i*NDOF2+1]; 4190 4191 /*Check solution*/ 4192 if(isnan(vx[i])) _error_("NaN found in solution vector"); 4193 if(isnan(vy[i])) _error_("NaN found in solution vector"); 4166 4194 } 4167 4195 … … 4242 4270 /*Use the dof list to index into the solution vector vz: */ 4243 4271 for(i=0;i<numdof;i++) values[i]=solution[doflist[i]]; 4244 for(i=0;i<NUMVERTICES;i++) vz[i]=values[i*NDOF1+0]; 4272 for(i=0;i<NUMVERTICES;i++){ 4273 vz[i]=values[i*NDOF1+0]; 4274 4275 /*Check solution*/ 4276 if(isnan(vz[i])) _error_("NaN found in solution vector"); 4277 } 4245 4278 4246 4279 /*Get Vx and Vy*/ … … 4350 4383 vz[i]=values[i*NDOF4+2]; 4351 4384 pressure[i]=values[i*NDOF4+3]; 4385 4386 /*Check solution*/ 4387 if(isnan(vx[i])) _error_("NaN found in solution vector"); 4388 if(isnan(vy[i])) _error_("NaN found in solution vector"); 4389 if(isnan(vz[i])) _error_("NaN found in solution vector"); 4390 if(isnan(pressure[i])) _error_("NaN found in solution vector"); 4352 4391 } 4353 4392 … … 4400 4439 lambdaz[i]=values[i*NDOF4+2]; 4401 4440 lambdap[i]=values[i*NDOF4+3]; 4441 4442 /*Check solution*/ 4443 if(isnan(lambdax[i])) _error_("NaN found in solution vector"); 4444 if(isnan(lambday[i])) _error_("NaN found in solution vector"); 4445 if(isnan(lambdaz[i])) _error_("NaN found in solution vector"); 4446 if(isnan(lambdap[i])) _error_("NaN found in solution vector"); 4402 4447 } 4403 4448 … … 4433 4478 lambdax[i]=values[i*NDOF2+0]; 4434 4479 lambday[i]=values[i*NDOF2+1]; 4480 4481 /*Check solution*/ 4482 if(isnan(lambdax[i])) _error_("NaN found in solution vector"); 4483 if(isnan(lambday[i])) _error_("NaN found in solution vector"); 4435 4484 } 4436 4485 … … 4459 4508 4460 4509 /*Use the dof list to index into the solution vector: */ 4461 for(i=0;i<numdof;i++) values[i]=solution[doflist[i]]; 4510 for(i=0;i<numdof;i++){ 4511 values[i]=solution[doflist[i]]; 4512 4513 /*Check solution*/ 4514 if(isnan(values[i])) _error_("NaN found in solution vector"); 4515 if(values[i]<0) _error_("temperature < 0°K found in solution vector"); 4516 if(values[i]>275) _error_("temperature > 275°K found in solution vector (Paterson's rheology associated is negative)"); 4517 } 4462 4518 4463 4519 this->inputs->GetParameterValue(&converged,ConvergedEnum); … … 4491 4547 4492 4548 /*Use the dof list to index into the solution vector: */ 4493 for(int i=0;i<numdof;i++) values[i]=solution[doflist[i]]; 4549 for(int i=0;i<numdof;i++){ 4550 values[i]=solution[doflist[i]]; 4551 if(isnan(values[i])) _error_("NaN found in solution vector"); 4552 } 4494 4553 4495 4554 /*Add input to the element: */ … … 4520 4579 values[i] =solution[doflist[i]]; 4521 4580 values[i+numdof2d]=values[i]; 4581 if(isnan(values[i])) _error_("NaN found in solution vector"); 4522 4582 } 4523 4583 -
issm/trunk/src/c/objects/Elements/Tria.cpp
r6413 r6420 3722 3722 3723 3723 /*Ok, we have vx and vy in values, fill in vx and vy arrays: */ 3724 for(i=0;i<numdof;i++) lambda[i]=values[i]; 3724 for(i=0;i<numdof;i++){ 3725 lambda[i]=values[i]; 3726 if(isnan(lambda[i])) _error_("NaN found in solution vector"); 3727 } 3725 3728 3726 3729 /*Add vx and vy as inputs to the tria element: */ … … 3752 3755 lambdax[i]=values[i*NDOF2+0]; 3753 3756 lambday[i]=values[i*NDOF2+1]; 3757 3758 /*Check solution*/ 3759 if(isnan(lambdax[i])) _error_("NaN found in solution vector"); 3760 if(isnan(lambday[i])) _error_("NaN found in solution vector"); 3754 3761 } 3755 3762 … … 3789 3796 vx[i]=values[i*NDOF2+0]; 3790 3797 vy[i]=values[i*NDOF2+1]; 3798 3799 /*Check solution*/ 3800 if(isnan(vx[i])) _error_("NaN found in solution vector"); 3801 if(isnan(vy[i])) _error_("NaN found in solution vector"); 3791 3802 } 3792 3803 … … 3848 3859 vx[i]=values[i*NDOF2+0]; 3849 3860 vy[i]=values[i*NDOF2+1]; 3861 3862 /*Check solution*/ 3863 if(isnan(vx[i])) _error_("NaN found in solution vector"); 3864 if(isnan(vy[i])) _error_("NaN found in solution vector"); 3850 3865 } 3851 3866 … … 3901 3916 3902 3917 /*Use the dof list to index into the solution vector: */ 3903 for(int i=0;i<numdof;i++) values[i]=solution[doflist[i]]; 3918 for(int i=0;i<numdof;i++){ 3919 values[i]=solution[doflist[i]]; 3920 if(isnan(values[i])) _error_("NaN found in solution vector"); 3921 } 3904 3922 3905 3923 /*Add input to the element: */
Note:
See TracChangeset
for help on using the changeset viewer.