| 179 | 
  | 
      Real ad1, ad2, ad3;     | 
| 180 | 
  | 
      t = this->data_[0][0] + this->data_[1][1] + this->data_[2][2] + 1.0; | 
| 181 | 
  | 
 | 
| 182 | 
< | 
      if( t > NumericConstant::epsilon ){ | 
| 182 | 
> | 
      if( t > 0.0 ){ | 
| 183 | 
  | 
 | 
| 184 | 
  | 
        s = 0.5 / sqrt( t ); | 
| 185 | 
  | 
        q[0] = 0.25 / s; | 
| 188 | 
  | 
        q[3] = (this->data_[0][1] - this->data_[1][0]) * s; | 
| 189 | 
  | 
      } else { | 
| 190 | 
  | 
 | 
| 191 | 
< | 
        ad1 = fabs( this->data_[0][0] ); | 
| 192 | 
< | 
        ad2 = fabs( this->data_[1][1] ); | 
| 193 | 
< | 
        ad3 = fabs( this->data_[2][2] ); | 
| 191 | 
> | 
        ad1 = this->data_[0][0]; | 
| 192 | 
> | 
        ad2 = this->data_[1][1]; | 
| 193 | 
> | 
        ad3 = this->data_[2][2]; | 
| 194 | 
  | 
 | 
| 195 | 
  | 
        if( ad1 >= ad2 && ad1 >= ad3 ){ | 
| 196 | 
  | 
 |