diff options
-rw-r--r-- | src/sfac.c | 7 | ||||
-rw-r--r-- | src/sfac.h | 10 |
2 files changed, 10 insertions, 7 deletions
@@ -228,7 +228,8 @@ struct molecule *load_molecule() char el[4]; int j, r; int done = 0; - float x, y, z, occ, B; + float xf, yf, zf, occf, Bf; + double x, y, z, occ, B; char *coords; rval = fgets(line, 1023, fh); @@ -248,11 +249,13 @@ struct molecule *load_molecule() } coords = line + 29; - r = sscanf(coords, "%f %f %f %f %f", &x, &y, &z, &occ, &B); + r = sscanf(coords, "%f %f %f %f %f", &xf, &yf, &zf, &occf, &Bf); if ( r != 5 ) { fprintf(stderr, "WTF?\n"); abort(); } + /* Promote to double precision */ + x = xf; y = yf; z = zf; occ = occf; B = Bf; for ( j=0; j<mol->n_species; j++ ) { @@ -24,11 +24,11 @@ struct mol_species char species[4]; /* Species name */ int n_atoms; /* Number of atoms of this species */ - float x[32*1024]; - float y[32*1024]; - float z[32*1024]; - float occ[32*1024]; - float B[32*1024]; + double x[32*1024]; + double y[32*1024]; + double z[32*1024]; + double occ[32*1024]; + double B[32*1024]; }; |