Hi Miguel, I will assume what you familiar with the basics of floating point arithmetic. 10e-15 sounds like machine precision, so depending on what you are exactly doing, you might be "playing with fire". I briefly looked at strictfp on Wikipedia, and from there I understand it is supposed to help portability. Without knowing the details of your problem it is difficult to say what exactly is happening. But it seems to me that your problem is not portability but of floating point (duuh!). Have you try your calculations directly in C? How did you get to the 10e-12 threshold? If you want to compute the machine precision you might want to take a look at this: http://en.wikipedia.org/wiki/Machine_epsilon#How_to_determine_machine_epsilon
I'm not sure this really helps, but... -- Juan 2011/9/2 Miguel García Torres <mgarcia...@gmail.com> > Hi all, > > I am porting some GSL C functions to Java. In function > gsl_linalg_hesstri_decomp, there are several calls to > the create_givens one to calculate the cosine and sin. However when I have > very small values (~10^-15), > there are some differences and this usually causes big differences that are > propagated through the iterations. > > I tried setting the key strictfp to the Java class to restrict the > floating-point <http://en.wikipedia.org/wiki/Floating-point> calculations; > however I get the > same problem. > Should I consider that values under 1e-12 should be set to 0? Did anybody > experience something similar? > If so what did you do? How can I know the precision of GSL (I am using > Linux > Ubuntu)? > > Thanks in advance, > > PS. I didn't find this question on previus emails. > _______________________________________________ > Help-gsl mailing list > Help-gsl@gnu.org > https://lists.gnu.org/mailman/listinfo/help-gsl > _______________________________________________ Help-gsl mailing list Help-gsl@gnu.org https://lists.gnu.org/mailman/listinfo/help-gsl