42 gboolean * showcoord[2], gboolean * showpoly[2], gboolean * showfrag,
59 gboolean read_bond = FALSE;
108 coord -> ntg[i] =
allocint(coord -> species);
109 if (fread (coord -> ntg[i],
sizeof(
int), coord -> species,
fp) != coord -> species)
return ERROR_COORD;
110 coord -> geolist[i] = g_malloc0 (coord -> species*
sizeof*coord -> geolist[i]);
111 if (i == 1) coord -> partial_geo = g_malloc0 (coord -> species*
sizeof*coord -> partial_geo);
112 for (j=0; j<coord -> species; j++)
114 coord -> geolist[i][j] = g_malloc0 (coord -> ntg[i][j]*
sizeof*coord -> geolist[i][j]);
115 if (fread (coord -> geolist[i][j],
sizeof(
int), coord -> ntg[i][j],
fp) != coord -> ntg[i][j])
return ERROR_COORD;
118 coord -> partial_geo[j] = g_malloc0 (coord -> ntg[i][j]*
sizeof*coord -> partial_geo[j]);
119 for (k=0; k<coord -> ntg[i][j]; k++)
121 coord -> partial_geo[j][k] = g_malloc0 (coord -> species*
sizeof*coord -> partial_geo[j][k]);
122 if (fread (coord -> partial_geo[j][k],
sizeof(
int), coord -> species,
fp) != coord -> species)
return ERROR_COORD;
129 for (i=0; i<coord -> species; i++)
131 for (j=0; j<coord -> ntg[1][i]; j++)
133 coord -> cmax =
max(coord -> cmax, coord -> geolist[1][i][j]);
134 coord -> cmin =
min(coord -> cmin, coord -> geolist[1][i][j]);
141 if (fread (& j,
sizeof(
int), 1,
fp) != 1)
return ERROR_COORD;
143 if (i > 1 && i < 4 && active_glwin -> adv_bonding[i-2] && j !=
active_project -> coord -> totcoord[i])
return ERROR_COORD;
155 if (i < 2 || (i > 3 && i < 9))
165 gboolean * showcoord[2];
166 gboolean * showpoly[2];
172 for (i=0; i<10; i++) coord -> totcoord[i] =
active_project -> coord -> totcoord[i];
integer(kind=c_int) function bonding(scf, sbf, adv, bdist, bmin, delt_ij, sfil)
distance distance_3d(cell_info *cell, int mdstep, atom *at, atom *bt)
distance between atom a and b in 3D
void new_coord_menus(project *this_proj, coord_info *coord, int new_spec, int nmols, gboolean *showcoord[2], gboolean *showpoly[2], gboolean *showfrag, gboolean update_it, gboolean update_mol)