| 33 |  | double kinetic; | 
| 34 |  | double amass; | 
| 35 |  | double aVel[3], aJ[3], I[3][3]; | 
| 36 | < | int j, kl; | 
| 36 | > | int i, j, k, kl; | 
| 37 |  |  | 
| 38 |  | double kinetic_global; | 
| 39 |  | vector<StuntDouble *> integrableObjects = info->integrableObjects; | 
| 53 |  | integrableObjects[kl]->getJ( aJ ); | 
| 54 |  | integrableObjects[kl]->getI( I ); | 
| 55 |  |  | 
| 56 | < | for (j=0; j<3; j++) | 
| 57 | < | kinetic += aJ[j]*aJ[j] / I[j][j]; | 
| 58 | < |  | 
| 56 | > | if (integrableObjects[kl]->isLinear()) { | 
| 57 | > | i = integrableObjects[kl]->linearAxis(); | 
| 58 | > | j = (i+1)%3; | 
| 59 | > | k = (i+2)%3; | 
| 60 | > | kinetic += aJ[j]*aJ[j]/I[j][j] + aJ[k]*aJ[k]/I[k][k]; | 
| 61 | > | } else { | 
| 62 | > | for (j=0; j<3; j++) | 
| 63 | > | kinetic += aJ[j]*aJ[j] / I[j][j]; | 
| 64 | > | } | 
| 65 |  | } | 
| 66 |  | } | 
| 67 |  | #ifdef IS_MPI |